The branch where development work takes place is the master.
If you are developing a feature, or you are working on a bug that involves an interface change, you'll need to go through the design phase.
Update your (forked & locally cloned) repository's master branch with the golden repository's master (IMPORTANT: Your fork's master branch should not be touched with any of your development changes. It should just reflect the golden repository's master, exactly).
git checkout master git pull upstream master |
Create a development branch for the ticket that you would like to work on and name it with the JIRA ID of the ticket:
git checkout -b <JIRA ID> |
Look at the checklist for developing code.
We recommend developing your code and your tests in parallel. Your PTL tests should provide good coverage of the requirements and your design.
git add <updated file> git commit -m "<Commit message>" |
Tip: Commit often, perfect later.
git push origin <JIRA ID> |
Fetch changes made to the golden repository by other contributors. By convention, 'upstream' points to the golden repository on GitHub:
git fetch upstream |
Rebase your development branch with new changes from the golden repository's master. 'upstream/master' is the remote tracking branch for the golden repository's (upstream's) master branch, on your local machine:
git checkout <JIRA ID> git rebase upstream/master |
Double-check the checklist for developing code.
Your code changes are good to go! Go ahead and create a pull request.
|
If you create new source or test files, make sure that this license text is in the header for all code and test files.
Your code is ready to be merged into the golden repository when the following are true:
Housekeeping: we strongly recommend that you delete the development branch from your forked and cloned repos now.
git checkout master git push origin --delete <JIRA ID> (deletes <JIRA ID> from the fork) git branch -D <JIRA ID> (deletes <JIRA ID> from local clone) |