On Sun, 23 Oct 2005, Junio C Hamano wrote: > > The current callers only feed commits for "$heads" parameters, > so the merge strategy backends are free to figure out the common > ancestor or even generate weave on the fly, but an unwritten > rule was that strategy backends are expected to do something > sensible even when the "common ancestors" and "heads" fed to > them are tree objects, which was my comment about 3-way was > about. Ahh. Yes, if you use raw trees, you're screwed - you can only ever do a 3-way merge, since you can't try to figure out any history. I agree that the "tree only" case is interesting too - it's how you can merge trees that may be related content-wise but don't share a history (eg the same project maintained in separate source trees), and it's obviously how you can merge totally unrelated projects (eg the gitk merge). At the same time, I think that's a different kind of merge, in general. And we definitely shouldn't limit ourselves to things where such merges work. Yes, tree-merges are wonderful, and they work really quite well, but I definitely want to keep the window open for merges that end up taking the full history into account. I just don't think they are nearly as important as some people seem to think. They should be a very special and unusual case, rather than something you expect to happen. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.htmlReceived on Mon Oct 24 13:32:50 2005
This archive was generated by hypermail 2.1.8 : 2005-10-24 13:32:53 EST