Development/Beta Cycle

From MusicBrainz Wiki

Note: This process does not apply to patches that require schema changes, or that need to be hot-fixed.

1. Write code.

2. Does the code need reviewing?

  • Yes: Continue.
  • No: Go to step 5.

3. Submit code for review.

  • Change ticket status to "In Review".

4. Has the code passed code review?

  • Yes: Continue.
  • No: Fix bugs. Go back to step 1.

5. Merge code to master.

6. Is the code fixing an issue affecting master but not beta?

  • Yes: Close ticket as "Fixed". Go to step 11.
  • No: Continue.

7. Is the code fixing an issue affecting beta but not production?

  • Yes: Go to step 9.
  • No: Continue.

8. Is the next release more than 7 days away?

  • Yes: Continue.
  • No: Go to step 11.

9. Merge code to beta.

10. Is the code fixing an issue affecting beta but not production?

  • Yes: Close ticket as "Fixed".
  • No: Change ticket status to "In Beta Testing".

11. Is it time to release?

  • Yes: Continue.
  • No: Stop. Go fix something else.

12. Merge beta into production.

  • Tag the release from the production branch.

13. Merge master into beta.