Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 1.18 KB

branching.md

File metadata and controls

43 lines (30 loc) · 1.18 KB

Branching

Branching from master

Some caveats to branching.

We branch earlier than we really should as a way to encourage stabilization on the master branch.

During that time only milestone-specific changes are allowed into the master and when things are stable (enough) we effectively sync the release branch to the HEAD of the master branch:

$ branchff release-1.3

Once that happens we then open up master to milestone+1 changes and move to the 2 phase cherry-pick model

Branching from a tag

For emergency patch releases, we may need to branch from an existing tag in order to patch in a single change.

Let's take this example.

We need to make a special patch release from the v1.3.0 tag on the release-1.3 branch.

# Create the new branch and resulting tags, builds, pushes, notifications...
$ anago release-1.3.0

The automatically notified contributor then creates a cherrypick-candidate PR for the emergency change using the cherry_pick_pull.sh tool.

# Create the new release with the emergency change added only to the v1.3.0 
# tag and branch
$ anago --official release-1.3.0