Git Workflow - Team-B-Capstone/Team-B-Capstone-2015 GitHub Wiki

Branches

  • Production: master
  • Development: development

Process for development

  • We have a main repository under the Team-B-Capstone organization.
    • This is the main, 'upstream' repo, and is the central source of truth.
  • Developers will fork this repo and work in their own clones.
  • To work on a new ticket / feature / fix, create a new branch based off of development
 git fetch upstream
 git checkout -b branchname upstream/development
  • When the branch is ready for review, push it to your fork.
 git push myfork branchname
  • Then, create a pull request on GitHub.

Process for reviewing

  • Code is reviewed by looking at pull request on GitHub.
  • To test code locally, fetch user's branch by adding their remote to your fork.
 git remote add will https://github.com/whopper/Team-B-Capstone-2015
 git checkout --track will/branchname
  • When the code looks good, ask the pull request submitter to rebase right before merging. This accurately preserves history.
  • Finally, click the merge button on the GitHub UI!

Process for releasing

  • Merge development into master.
  • Create a new tag in master.