On Cloud Atlas, we switched to a heavily modified version of the “git flow” workflow, based on http://nvie.com/posts/a-successful-git-branching-model/ and https://www.atlassian.com/git/workflows#!workflow-gitflow
The basic premise is this: We run one main branch, develop
, and whenever we want to begin preparing for a release, we create a Release_x.y.z
branch off of develop
. It is these Release_x.y.z
branches that get deployed to staging and then production.