git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <junkio@cox.net>
To: Fredrik Kuivinen <freku045@student.liu.se>
Cc: git@vger.kernel.org, Daniel Barkalow <barkalow@iabervon.org>
Subject: Unified merge driver pushed out to "master" branch
Date: Sat, 10 Sep 2005 19:54:19 -0700	[thread overview]
Message-ID: <7vzmqk2u1w.fsf_-_@assigned-by-dhcp.cox.net> (raw)
In-Reply-To: <20050907165012.GA20392@c165.ib.student.liu.se> (Fredrik Kuivinen's message of "Wed, 7 Sep 2005 18:50:12 +0200")

I've pushed out the 'git merge' along with Daniel's read-tree
updates and your 'base on merge of bases' merge strategy driver
in the "master" branch.

The last one is what I butchered your code without really
auditing the changes I made, so I'd appreciate you to take a
look at it and supply any necessary updates and fixes.  My
changes are meant to be only to adjust the calling convention to
that of 'git merge' -- that is, it gets merge bases and heads
from the command line, and it is not supposed to commit and
update HEAD itself, but is supposed to leave its best effort in
the working tree and the paths that cannot be automerged should
be left as that of HEAD version in the index file, so that the
user can run 'git diff' to see what is happening while resolving
things by hand.  I do not think my change did the last part
correctlyx.  The change to introduce '-i' option to read-tree is
also present.

I primarily used the commits found in the Linux 2.6 repository
and its derivatives that have multiple potential merge bases for
my testing.  Among them, the attempt to merge parents of this
commit triggered an assertion failure -- it may be my fault but
I have not spent much time to diagnose it.

commit 6358924b06cd1aaa031b8ba0c33e5a15e795bef0
Merge: 1da21e73bdc458f8131e6071072632b4c3b0430f 344a076110f4ecb16ea6d286b63be696604982ed
Author: Tony Luck <tony.luck@intel.com>
Date:   Thu Sep 8 14:29:32 2005 -0700

    Pull release into test branch

----------------------------------------------------------------
Here is a summary of my test results.

"Expect" names the commit being tested.  The parents of each of
these commits have more than one merge-base, and the test is to
start from one parent of it, and merge the other parent into it
using the four merge programs:

 * traditional is 'git-resolve-script' from GIT 0.99.6 (it does
   not even use Daniel's read-tree so that I can catch
   regression in read-tree).

 * dbrt is 'git-merge -s resolve', i.e. Daniel's multi-base merge.

 * stupid is 'git-merge -s stupid', supposed to be the same
   as 'git-resolve' (but internally uses Daniel's read-tree with
   only one merge base).

 * fredrik is 'git-merge -s fredrik', the one I butchered.

------------------------------------------------
Expect 0c168775709faa74c1b87f1e61046e0c51ade7f3
Method 'traditional' failed to automerge.
Method 'dbrt' failed to automerge.
Method 'stupid' failed to automerge.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

The fredrik is the only one that merged successfully, but its
result is different from the actual commit.

:100644 100644 065b702df56353a00d5f460cf385f172decccf2b cd4222ff8b925f6b92414d58729d225fccc3f310 M	include/net/ieee80211.h

------------------------------------------------
Expect 0c3e091838f02c537ccab3b6e8180091080f7df2 (case #16)
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' failed to automerge.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

The fredrik result is different from the actual commit.

:100644 100644 a7bed60b69f9e8de9a49944e22d03fb388ae93c7 51a7b7b4dd0e7c5720683a40637cdb79a31ec4c4 M	arch/ia64/hp/sim/boot/bootloader.c

------------------------------------------------
Expect 0e396ee43e445cb7c215a98da4e76d0ce354d9d7
Method 'traditional' failed to automerge.
Method 'dbrt' failed to automerge.
Method 'stupid' failed to automerge.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

The fredrik is the only one that merged successfully, and its
result matches the actual commit.

------------------------------------------------
Expect 1960ff70a6c1db8e5f8fa9ec7020ef585f8ce706
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

All results match the actual commit.

------------------------------------------------
Expect 19925d7e0af7de645d808fd973ef99049fce52f0
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

All results match the actual commit.

------------------------------------------------
Expect 3190186362466658f01b2e354e639378ce07e1a9
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

All results match the actual commit.

------------------------------------------------
Expect 467ca22d3371f132ee225a5591a1ed0cd518cb3d
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

All results match the actual commit.

------------------------------------------------
Expect 539aeb871b52233b189ae976dfded20e14db645a
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

All results match the actual commit.

------------------------------------------------
Expect 6358924b06cd1aaa031b8ba0c33e5a15e795bef0
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' failed to automerge.

Fredrik dies on asserttion failure.

------------------------------------------------
Expect 84ffa747520edd4556b136bdfc9df9eb1673ce12 (case #16)
Method 'traditional' failed to automerge.
Method 'dbrt' failed to automerge.
Method 'stupid' failed to automerge.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

The fredrik result matches the actual commit.

------------------------------------------------
Expect a855f9a4d29f0ec338c337358844389171b0bae0
Method 'traditional' failed to automerge.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' failed to automerge.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

Both fredrik and dbrt results match the actual commit.

------------------------------------------------
Expect cf70be167c085af820c0c2a606cab8c3ee819dc6
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

All results match the actual commit.

------------------------------------------------
Expect da28c12089dfcfb8695b6b555cdb8e03dda2b690
Method 'traditional' automerged
Method 'traditional' resolved cleanly.
Method 'dbrt' automerged
Method 'dbrt' resolved cleanly.
Method 'stupid' automerged
Method 'stupid' resolved cleanly.
Method 'fredrik' automerged
Method 'fredrik' resolved cleanly.

All results match the actual commit.

------------------------------------------------

  reply	other threads:[~2005-09-11  2:54 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-07 16:47 [PATCH 0/2] A new merge algorithm, take 3 Fredrik Kuivinen
2005-09-07 16:50 ` [PATCH 1/2] Add '-i' flag to read-tree to make it ignore whats in the working directory Fredrik Kuivinen
2005-09-11  2:54   ` Junio C Hamano [this message]
2005-09-11 21:05     ` Unified merge driver pushed out to "master" branch Fredrik Kuivinen
2005-09-12  1:23       ` Junio C Hamano
2005-09-14  5:56     ` Another merge test case from the kernel tree Junio C Hamano
2005-09-14 16:11       ` Daniel Barkalow
2005-09-14 16:30         ` Junio C Hamano
2005-09-14 17:42       ` Fredrik Kuivinen
2005-09-14 17:51         ` Junio C Hamano
2005-09-15  0:47       ` Yet another set of merge test cases " Junio C Hamano
2005-09-19 16:13         ` Fredrik Kuivinen
2005-09-20  1:53           ` Junio C Hamano
2005-09-20  5:50             ` Fredrik Kuivinen
2005-09-07 16:51 ` [PATCH 2/2] A new merge algorithm Fredrik Kuivinen
2005-09-07 18:33 ` [PATCH 0/2] A new merge algorithm, take 3 Daniel Barkalow
2005-09-08  6:06   ` Fredrik Kuivinen
2005-09-08 15:27     ` Daniel Barkalow
2005-09-08 20:05       ` Fredrik Kuivinen
2005-09-08 21:27         ` Daniel Barkalow
2005-09-07 18:36 ` Junio C Hamano
     [not found]   ` <431F34FF.5050301@citi.umich.edu>
     [not found]     ` <7vvf1cz64l.fsf@assigned-by-dhcp.cox.net>
2005-09-08 15:06       ` Chuck Lever
2005-09-08 16:51         ` Junio C Hamano
2005-09-08 17:19           ` Linus Torvalds
2005-09-08 17:51             ` Junio C Hamano
2005-09-08 18:16             ` Chuck Lever
2005-09-08 18:35               ` Linus Torvalds
2005-09-08 18:58                 ` Chuck Lever
2005-09-08 20:59                   ` Linus Torvalds
2005-09-09  7:44                   ` [RFH] Merge driver Junio C Hamano
2005-09-09 16:05                     ` Daniel Barkalow
2005-09-09 16:43                       ` Junio C Hamano
2005-09-09 17:25                         ` Daniel Barkalow
2005-09-11  4:58                     ` Junio C Hamano
2005-09-12 21:08                     ` Fredrik Kuivinen
2005-09-12 21:16                       ` Junio C Hamano
2005-09-13 20:33                         ` Fredrik Kuivinen
2005-09-13 20:46                           ` Junio C Hamano
2005-09-08 20:54   ` [PATCH 0/2] A new merge algorithm, take 3 Junio C Hamano
2005-09-08 21:23     ` A Large Angry SCM

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7vzmqk2u1w.fsf_-_@assigned-by-dhcp.cox.net \
    --to=junkio@cox.net \
    --cc=barkalow@iabervon.org \
    --cc=freku045@student.liu.se \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).