Skip to main content

Code Branching Policy

Code Branching Diagram

master
|
- next
|
--- next_aaaa
| |
| --- issuenn
|
--- next_bbbb
| |
| --- issuemm
| --- issuexx
|
--- next_cccc
...

Policy

  1. master/main only ever contains the version that is currently in production

    Only @mferrare can promote code into master and in accordance with Promoting Code into Production

  2. next branch is created from master. This contains the next version to be promoted into production

    Only @mferrare can promote code into next and in accordance with [Promoting Code into Production](/guides/promoting-code-into-production

  3. next_aaa, next_bbbb etc are working branches for each team member. aaaa, bbbb should be the GitHub usernames of each team member
    1. These are working branches. Each team member can commit changes freely to their own working branch.
    2. Team member may also commit changes to other team members' working branches (but please consult with your team member first!)
  4. issuemm, issuenn are optional but recommended. mm, nn etc are issue numbers as recorded in GitHub.

    While team members could work directly on their next_aaaa branch, it's recommended that team members create additional branches under their 'next branch` and work on issues there. This makes it clearer to everyone which issues are being worked on by which team member.