How To Create Release Branches

  1. Create release maintenance and engineering branches in head (usually off master upon feature freeze). Push to sf.net.
    • example names: "g-maint", "g-release"
  2. Create release maintenance and engineering branches in plugins (usually off master upon feature freeze). Push to sf.net.
  3. Bump version numbers for maven modules on the master branch to differentiate artifact versions from those in the imminent release (for an example, see MIFOS-3861). Never bump revisions on release branches.
  4. Maintain current.release.name Maven build property on release engineering branch. (example right after creating branch, near-release example)
  5. Maintain current.release.name Maven build property on master. (example)
  6. Change plugin dependency version numbers on plugins/master to those on head/master.
  7. Create ci jobs for the new release engineering branches. Delete the ci job for the branch before the previous one (for instance, if you create head-g-release, delete the head-e-release job).
    • It is not necessary to create jobs for release maintenance branches since they are frequently merged to release engineering branches
  8. Create a test server for the new release engineering branch on head/master.
  9. Update Test Servers.