Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is this a correct way to implement docking line style branching pattern in mercurial?

We are thinking in implementing Docking Line branching pattern for merging one feature at a time into the staging branch and then, if testing is successful integrating into an stable branch and making a release. The question is the following: Should we make the default branch in mercurial be the stable or the staging branch, since the staging branch is likely to be backed out if the feature doesn't cut it, so developers will have to merge into feature branches from the stable branch and not the 'staging' or docking line.

like image 974
piotr Avatar asked May 13 '11 11:05

piotr


1 Answers

Either strategy will work, it is a matter of process and taste. If you are looking for examples from other projects, then consider the Mercurial source code itself.

The Mercurial source has two primary branches: default and stable.

The default branch in the Mercurial code is the unstable "staging branch". New features are committed there and tested. If a commit is found to be in error, then it is undone with hg backout.

Releases are made from the stable branch. Commits are made to this branch for bug fixes. When release time is near, default is merged into stable to pull in all the new features.

like image 182
Tim Henigan Avatar answered Oct 02 '22 06:10

Tim Henigan