Git Workflow
References
[1]http://nvie.com/posts/a-successful-git-branching-model/
A golden git workflow:
Branches
feature/*: feature branches that are worked on by developers
develop: like trunk based git workflow, this develop branch contains all commits under development
master: golden version of the project, must be working in production
release/*: these release branches are cut off from develop branch.Musteventually be merged to both develop and master branches.
hotfix/*: these hotfix branches are taken from master branch and are for bug fixes. Must eventually be merged to both develop and master branches.
Workflow
1. Start a feature/* branch on a certain jira ticket, like feature/jira-120322
2. Complete your work in the fretaure branch and merge it to develop branch afer code review
3. When planning on a release, cut off a release branch like release/1.0.1 from the develop branch and push any further bugfix commits into this branch
4. After successfully released the project from release branch, merge release/* back to both develop and master branch. master branch now has the golden version
5. Once we need to bug fix the version in master, we cut off a hotfix branch from master like hotfix/1.0.2. We apply the hotfix commits and finally release it to production
6. Merge the hotfix branch back to develop and master branches