Skip to content
Henne Vogelsang edited this page Jun 8, 2016 · 1 revision

How we roll releases

OSEM is an semantic versioned app. That means given a version number MAJOR.MINOR.PATCH we increment the:

  1. MAJOR version when we make incompatible changes,
  2. MINOR version when we add functionality in a backwards-compatible manner
  3. PATCH version when we make backwards-compatible bug fixes

New MAJOR version

  1. We stabilize master until it's ready for a release
  2. We create a release tag pointing to master with the format vMAJOR.MINOR. (e.g. v1.0)

New MINOR/PATCH version

  1. We create a new branching based on master with the name of the MAJOR number written out in a word (e.g. 1=one, 12=twelve) unless it exists
  2. We cherry pick commits from master for the version
  3. We create a release tag pointing to this branch with the format vMAJOR.MINOR.PATCH (e.g. v1.1)