Skip to content

Instantly share code, notes, and snippets.

@rwetzeler
Created June 23, 2010 13:15
Show Gist options
  • Save rwetzeler/449904 to your computer and use it in GitHub Desktop.
Save rwetzeler/449904 to your computer and use it in GitHub Desktop.
Git Workflow for teams at FCStone
This workflow is meant for feature development in a branch. Branches should be very short lived in this workflow. Because they are so lightweight in Git, this shouldn't be a problem.
Only go past step 7 when you are done with that feature and ready to merge it back to the main trunk/master branch.
Based from Jimmy Bogard http://www.lostechies.com/blogs/jimmy_bogard/archive/2010/04/30/automapper-git-workflow-dealing-with-bugs-issues.aspx
1) git checkout –b “Feature1”
<work work>
2) git add .
3) git commit –m “Commit message”
<repeat steps 2&3 as necessary>
<Upon completing Feature1>
<Get latest from shared Repository (assumes shared is the master branch)>
4)git checkout master
5)git pull --rebase origin master (pull in latest and rebase local master mapped to origin/master)
<Update branch "Feature1" with latest changes from origin/master (this may require some fixes on Feature1>
6)git checkout Feature1
7)git rebase master
<Fix any conflicts this may cause>
7a) git add . <This will say, yes I'm ok with the changes that you are suggesting i.e. removing the file, or updating the file etc>
7b) git rebase --continue
<repeat 7a and 7b as needed until all commits/patches have been applied>
<Migrate changes/features from branch "Feature1" into master local branch>
8)git checkout master
9)git rebase Feature1(or merge, same thing)
<Submit changes back to shared repository>
10)git push origin master
11)git branch –d Feature1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment