On Wed, Sep 07, 2005 at 02:33:42PM -0400, Daniel Barkalow wrote: > On Wed, 7 Sep 2005, Fredrik Kuivinen wrote: > > > Of the 500 merge commits that currently exists in the kernel > > repository 19 produces non-clean merges with git-merge-script. The > > four merge cases listed in > > <[EMAIL PROTECTED]> are cleanly merged by > > git-merge-script. Every merge commit which is cleanly merged by > > git-resolve-script is also cleanly merged by git-merge-script, > > furthermore the results are identical. There are currently two merges > > in the kernel repository which are not cleanly merged by > > git-resolve-script but are cleanly merged by git-merge-script. > > If you use my read-tree and change git-resolve-script to pass all of the > ancestors to it, how does it do? I expect you'll still be slightly ahead, > because we don't (yet) have content merge with multiple ancestors. You > should also check the merge that Tony Luck reported, which undid a revert, > as well as the one that Len Brown reported around the same time which had > similar problems. I think maintainer trees are a much better test for a > merge algorithm, because the kernel repository is relatively linear, while > maintainers tend more to merge things back and forth.
Junio tested some of the multiple common ancestor cases with your version of read-tree and reported his results in <[EMAIL PROTECTED]>. The two cases my algorithm merges cleanly and git-resolve-script do not merge cleanly are 0e396ee43e445cb7c215a98da4e76d0ce354d9d7 and 0c168775709faa74c1b87f1e61046e0c51ade7f3. Both of them have two common ancestors. The second one have, as far as I know, not been tested with your read-tree. The merge cases reported by Tony Luck and Len Brown are both cleanly merged by my code. You are probably right about the maintainer trees. I should have a look at some of them. Do you know any specific repositories with interesting merge cases? - Fredrik - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html