Subject: Re: [boost] RE process (prospective from a retired FreeBSD committer)...
From: Dave Abrahams (dave_at_[hidden])
Date: 2011-01-30 17:40:35
At Sun, 30 Jan 2011 11:34:52 -0800,
Steven Watanabe wrote:
> I cherry-pick changesets to merge to the release
> branch on a pretty regular basis and it works fine
> with svn. If git really doesn't support this
> well, you can count me as strongly against switching.
Git supports it "pretty well" because its merge algorithms are pretty
smart (I've never had a problem in practice), but it can't do as well
as SVN does for the particular use case Volodya has mentioned.
For everyone's reference, here's where he ended up:
Commits in HEAD
4faabacc * master Do something after cherry-pick
0468cdd0 * C2
f5b6b987 | * feature C3
fb0de3f5 | * C2
7c8f9509 | * C1
04e628f9 * Initial version
The last commit on master changed lines that were also changed by C2.
Because 0468cdd0 and fb0de3f5 (the two C2's) are separate commits, Git
has no way to recognize that fb0de3f5 has been incorporated into
4faabacc, so it will try to make those changes again when "feature" is
merged into "master."
-- Dave Abrahams BoostPro Computing http://www.boostpro.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk