Difference between revisions of "Guide to FS Open and git"

From FreeSpace Wiki
Jump to: navigation, search
(stage2; still more to come)
m
Line 1: Line 1:
== Getting the source: Git on Windows ==
+
== Getting the source: Tortoise Git ==
  
 
(based on [[Getting_the_FreeSpace2:_SCP_Source_Code]])
 
(based on [[Getting_the_FreeSpace2:_SCP_Source_Code]])
Line 12: Line 12:
  
  
== Simple Development: Git on Windows ==
+
== Simple Development: Tortoise Git ==
  
 
Note: the guide assumes that you will be developing using a github fork (which is recommended for everyone, SCP members and non-members alike)
 
Note: the guide assumes that you will be developing using a github fork (which is recommended for everyone, SCP members and non-members alike)
Line 28: Line 28:
 
* In the new window, enter the name for the new branch, verify that the branch is based on HEAD (master) and check the "Switch to new branch" box
 
* In the new window, enter the name for the new branch, verify that the branch is based on HEAD (master) and check the "Switch to new branch" box
 
(piccy)
 
(piccy)
* Write some code
+
* Write some code with your Editor of Choice
 
* Test your new code
 
* Test your new code
 
* When you're happy with the code, right click on the repository directory and select TortoiseGit -> Diff
 
* When you're happy with the code, right click on the repository directory and select TortoiseGit -> Diff
 
(piccy)
 
(piccy)
* Review your changes by double-clicking on all the files listed in the new window (ensure no unwanted changes have sneaked in!).
+
* Review your changes by double-clicking on all the files listed in the new window (ensure no unwanted changes have snuck in!).
** Note: this will start TortoiseGitMerge, which is also used to resolve conflicts
+
** Note: this will start TortoiseGitMerge (also used to resolve conflicts)
 
(piccy)
 
(piccy)
 
* When your review is complete, press "Commit"
 
* When your review is complete, press "Commit"
 
(piccy)
 
(piccy)
 
* In the new window, add a commit message and press OK
 
* In the new window, add a commit message and press OK
** Note: you can commit multiple times before pushing
+
** Note: you can commit multiple times before pushing (e.g. you have coded a large feature with several distinct parts)
 
(piccy)
 
(piccy)
 
* When the commit is complete, press the "push" button to send your commit(s) to your github repository
 
* When the commit is complete, press the "push" button to send your commit(s) to your github repository
Line 46: Line 46:
 
* Finally, press OK
 
* Finally, press OK
 
(piccy)
 
(piccy)
* Go to your Github Repository webpage and select
+
* Go to your Github Repository webpage and select the branch you just pushed
 +
(piccy)
 +
* When you have the correct branch selected, click on the "Pull/Review/Compare" button
 +
(piccy)
 +
** Note: the previous two steps

Revision as of 09:05, 24 February 2014

Getting the source: Tortoise Git

(based on Getting_the_FreeSpace2:_SCP_Source_Code)

  • Download and install Git For Windows (this is a degendency for TortoiseGit)
  • Download and install TortoiseGit (you probably need to reboot after installing)
  • Make a new folder on your HDD where you'd like to install the code. You'll need a fair bit of space for the code + the intermediate files when building it. Press right mouse and choose Git Clone from the list.

(piccy)

(piccy)

  • Press OK to begin downloading from the repository (this may take a few minutes, depending on the speed of your internet connection)


Simple Development: Tortoise Git

Note: the guide assumes that you will be developing using a github fork (which is recommended for everyone, SCP members and non-members alike)

(piccy)

  • Record the URL for your newly forked copy of the FSO repository

(piccy)

  • Get the code per the guide above (fix with proper intra-page link)
    • Note: you need to use the URL for your forked repository, not the main FSO repository listed above
  • Right click on the repository directory and select TortoiseGit -> Create Branch
    • Note: all development should be done in a new branch, instead of being done in the "master" branch. It's just simpler

(piccy)

  • In the new window, enter the name for the new branch, verify that the branch is based on HEAD (master) and check the "Switch to new branch" box

(piccy)

  • Write some code with your Editor of Choice
  • Test your new code
  • When you're happy with the code, right click on the repository directory and select TortoiseGit -> Diff

(piccy)

  • Review your changes by double-clicking on all the files listed in the new window (ensure no unwanted changes have snuck in!).
    • Note: this will start TortoiseGitMerge (also used to resolve conflicts)

(piccy)

  • When your review is complete, press "Commit"

(piccy)

  • In the new window, add a commit message and press OK
    • Note: you can commit multiple times before pushing (e.g. you have coded a large feature with several distinct parts)

(piccy)

  • When the commit is complete, press the "push" button to send your commit(s) to your github repository

(piccy)

  • Select your local branch name from the drop down list and ensure your Destination -> Remote: is "origin"
  • If you want to, you can give the public remote branch a different name to your local branch (this can be useful when rebasing a branch already published to your public repository)
  • Finally, press OK

(piccy)

  • Go to your Github Repository webpage and select the branch you just pushed

(piccy)

  • When you have the correct branch selected, click on the "Pull/Review/Compare" button

(piccy)

    • Note: the previous two steps