Subject: Re: [boost] [git] Mercurial?
From: Christof Donat (cd_at_[hidden])
Date: 2012-03-22 05:01:32
> I do not believe for even a second that any product can do merging of
> the same source file automatically and flawlessly.
None can do, of course. There are techniques to minimize the problems. The
most important one is small and frequent commits. These reduce the possible
conflicts that can not be automatically resolved a lot.
Another "trick" that git managed projects use heavily is rebasing. That might
sound strange to someone used to using svn, but when you go through it, you'll
find out that rebasing really is a good thing to do, when working with a lot
of small branches.
And then of course you can invest a bit more or a bit less of your brainpower
in the automatic merging algorithms when developing a VCS. Systems where
branching and merging is seen as an advanced feature get away with less
sophisticated algorithms. That is OK for them, because it is an area that is
rarely used and only by "advanced" users. Actually svn can get away with
beeing worse than cvs at the support of merging - at least that is the
experience I have with both of them.
Distributed Systems have the branching and merging as the main concurrency
idiom. That is why they don't get away with less sophisticated algorithms.
They simply have to be good at that in order to compete with the other DVCSs.
If git was bad at it, e.g. monotone, bazaar, or mercurial would be a lot more
-- okunah gmbh Software nach Maß Werner-Haas-Str. 8 www.okunah.de 86153 Augsburg cd_at_[hidden] Registergericht Augsburg Geschäftsführer Augsburg HRB 21896 Christof Donat UStID: DE 248 815 055