Audit options with Mercurial
Arne Babenhauserheide
arne_bab at web.de
Sun Jan 23 16:34:50 CST 2011
On Sunday 23 January 2011 15:32:44 Dave Brosius wrote:
> Now if you are looking for approval management as the OP is, then at the
> very least you will have to build some workflow around Mercurial, as
> this isn't supported directly. To me it would be as simple to having 3
> repositories owned by development, qa, and release. Where each
> Of course that probably isn't good enough given the sound of the Ops
> company. The histerical paranoia that exudes seems unlikely to be
> satisfiable by any tool really. I'm glad i don't work in an environment
> like that.
How about using the default branch for development, then having a QA named
branch and a release branch.
The advantage is that merging default into QA requires an explicit merge which
can subsequently be GPG signed by the developer responsible for it.
When QA finishes applying their changes, they first of all merge back into
default (so that developers work on the QA version) and then merge into
release, GPG signing the merge commit.
For every subsequent layer, just add another named branch.
Commands:
* Developer:
hg pull # get the latest changes
hg update
hg commit -m "<what I did>"
hg update -C QA
hg merge default
hg commit -m "merged default branch for QA"
hg sign
hg push
* QA:
hg pull
hg update QA
hg commit -m "QA fixes"
hg update -C default
hg merge QA
hg ci -m "merged QA fixes back into the development branch"
hg update -C release
hg merge QA
hg commit -m "merged finished QA into release"
hg sign
That’s it: A complete approval management solution with Mercurial, using only
core commands plus the GPG extension for verifiable signatures.
Best wishes,
Arne
PS: I just added this workflow to the workflows page in the wiki:
http://mercurial.selenic.com/wiki/Workflows
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 316 bytes
Desc: This is a digitally signed message part.
URL: <http://selenic.com/pipermail/mercurial/attachments/20110123/849edb38/attachment.pgp>
More information about the Mercurial
mailing list