diff options
author | Jonathan Nieder <jrnieder@gmail.com> | 2010-03-20 19:37:33 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-03-20 20:36:11 -0700 |
commit | 4bb0936206b046a4fe606e9b0c9fe6ecc7a0ff69 (patch) | |
tree | 9559a761fb84a790fd35f5ee494984a405e8bebc | |
parent | a4b5e91c49238146f4cb85ff5f7f3bc97e0e51de (diff) | |
download | git-4bb0936206b046a4fe606e9b0c9fe6ecc7a0ff69.tar.gz git-4bb0936206b046a4fe606e9b0c9fe6ecc7a0ff69.tar.xz |
merge-file --diff3: add a label for ancestor
git merge-file --diff3 can be used to present conflicts hunks
including text from the common ancestor.
The added information is helpful for resolving a merge by hand, and
merge tools can usually grok it because it looks like output from
diff3 -m. However, ‘diff3’ includes a label for the merge base on the
||||||| line and some tools cannot parse conflict hunks without such a
label. Write the base-name as passed in a -L option (or the name of
the ancestor file by default) on that line.
git rerere will not have trouble parsing this output, since instead of
looking for a newline, it looks for whitespace after the |||||||
marker. Since rerere includes its own code for recreating conflict
hunks, conflict identifiers are unaffected. No other code in git tries
to parse conflict hunks.
Requested-by: Stefan Monnier <monnier@iro.umontreal.ca>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin/merge-file.c | 1 | ||||
-rwxr-xr-x | t/t6023-merge-file.sh | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/builtin/merge-file.c b/builtin/merge-file.c index 65eb790fd..610849a65 100644 --- a/builtin/merge-file.c +++ b/builtin/merge-file.c @@ -77,6 +77,7 @@ int cmd_merge_file(int argc, const char **argv, const char *prefix) argv[i]); } + xmp.ancestor = names[1]; xmp.file1 = names[0]; xmp.file2 = names[2]; ret = xdl_merge(mmfs + 1, mmfs + 0, mmfs + 2, &xmp, &result); diff --git a/t/t6023-merge-file.sh b/t/t6023-merge-file.sh index 5034dd135..d486d7399 100755 --- a/t/t6023-merge-file.sh +++ b/t/t6023-merge-file.sh @@ -181,7 +181,7 @@ et nihil mihi deerit; In loco pascuae ibi me collocavit; super aquam refectionis educavit me. -||||||| +||||||| new5.txt et nihil mihi deerit. In loco pascuae ibi me collocavit, super aquam refectionis educavit me; @@ -225,7 +225,7 @@ et nihil mihi deerit; In loco pascuae ibi me collocavit; super aquam refectionis educavit me. -|||||||||| +|||||||||| new5.txt et nihil mihi deerit. In loco pascuae ibi me collocavit, super aquam refectionis educavit me; |