- features and bug fixes are developed on own branches that are branched off master
- before a branch is merged into master it has to pass technical QA
- releases are staged and maintained on the release branch
- master is merged into release at the end of a sprint