Difference between revisions of "Introduction to Git for Development"
Tags: Mobile web edit Mobile edit |
(→Developing with Git: Added more info on project under git) Tags: Mobile web edit Mobile edit |
||
Line 41: | Line 41: | ||
== Creating a RailOS Project with Git == | == Creating a RailOS Project with Git == | ||
+ | |||
+ | There is a drive towards standardising the directory structure with RailOS projects such that metadata can be parsed and files located with ease. As such it is recommend that projects be created using the template repository located under the RailOS GitHub organisation which can be found [https://github.com/Railway-Op-Sim/UN-Template here]. By clicking "Use this Template" you can create a new repository, if you plan on opening up to contributions from the community you can create the repository under the organisation itself. To do this you will firstly need to request to be added to the organisation. |
Latest revision as of 15:59, 19 November 2022
Git is a free and open source version control software which is used for projects under the Railway-Op-Sim GitHub Organisation. When developing code or raw text based projects version control provides an essential means of storing, iteratively, changes made to files allowing the user to restore a project to a previous state should the need arise to reset it. Git also allows multiple developers to work on the same project simultaneously without risk of changes clashing. A project using Git for version control is called a repository.
Developing with Git
There are two main ways to interact with Git, using a Graphical User Interface (GUI) based application such as GitHub Desktop, or the command line interface (CLI).
Development with GitHub Desktop
For those less familiar with using the command line, GitHub provides an application for interacting with repositories hosted on their service. The software is available here.
Installing Git CLI
Git for Windows is available to download on the software website.
When installing the software it is recommended that the Use MinTTY (the default terminal of MSYS2)
option be selected as this provides a Unix BASH style terminal which is easier to use compared to the default cmd.exe
application. After installation the Git Bash application is available within the start menu.
Introduction to Git CLI
All Git commands within this section must be run from within the project directory/repository.
Setting up Git in an existing project directory
When setting up a Git project make sure you are in the root (top level) directory for your project and run the following command:
git init
this initialises the repository and adds a hidden .git
directory which will contain the archived project versions.
There is no set requirement for a remote server, Git can be used completely offline if you prefer to not upload files.
Setting a Remote Address
In order to be able to upload your project onto GitHub you need to firstly create a remote repository and then copy the clone URL. There are two options, either cloning using HTTPS which will require you set up a temporary access key, or SSH which requires setting up a more permanent SSH key, these are outlined here:
To add the URL as the remote repository for your local project run:
git remote add origin <copied-url>
Creating a RailOS Project with Git
There is a drive towards standardising the directory structure with RailOS projects such that metadata can be parsed and files located with ease. As such it is recommend that projects be created using the template repository located under the RailOS GitHub organisation which can be found here. By clicking "Use this Template" you can create a new repository, if you plan on opening up to contributions from the community you can create the repository under the organisation itself. To do this you will firstly need to request to be added to the organisation.