summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorRichard Hansen <hansenr@google.com>2017-01-10 20:42:02 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-01-10 21:22:51 (GMT)
commitd0e0cfe745e0c88ca2f4d4ed9f1d2871b659d872 (patch)
tree8333fea31498b202eda76db1ff77e0bc3c3cb5f1 /t
parentc1b0d3a010eaed0d7683fe0593132f2211467b20 (diff)
downloadgit-d0e0cfe745e0c88ca2f4d4ed9f1d2871b659d872.zip
git-d0e0cfe745e0c88ca2f4d4ed9f1d2871b659d872.tar.gz
git-d0e0cfe745e0c88ca2f4d4ed9f1d2871b659d872.tar.bz2
mergetool: fix running in subdir when rerere enabled
"git mergetool" (without any pathspec on the command line) that is not run from the top-level of the working tree no longer works in Git v2.11, failing to get the list of unmerged paths from the output of "git rerere remaining". This regression was introduced by 57937f70a0 ("mergetool: honor diff.orderFile", 2016-10-07). This is because the pathnames output by the 'git rerere remaining' command are relative to the top-level directory but the 'git diff --name-only' command expects its pathname arguments to be relative to the current working directory. To make everything consistent, cd_to_toplevel before running 'git diff --name-only' and adjust any relative pathnames. Signed-off-by: Richard Hansen <hansenr@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
-rwxr-xr-xt/t7610-mergetool.sh7
1 files changed, 6 insertions, 1 deletions
diff --git a/t/t7610-mergetool.sh b/t/t7610-mergetool.sh
index ab0b005..180dd70 100755
--- a/t/t7610-mergetool.sh
+++ b/t/t7610-mergetool.sh
@@ -234,7 +234,7 @@ test_expect_success 'mergetool merges all from subdir (rerere disabled)' '
)
'
-test_expect_failure 'mergetool merges all from subdir (rerere enabled)' '
+test_expect_success 'mergetool merges all from subdir (rerere enabled)' '
test_when_finished "git reset --hard" &&
git checkout -b test$test_count branch1 &&
test_config rerere.enabled true &&
@@ -678,6 +678,11 @@ test_expect_success 'diff.orderFile configuration is honored' '
b
a
EOF
+
+ # make sure "order-file" that is ambiguous between
+ # rev and path is understood correctly.
+ git branch order-file HEAD &&
+
git mergetool --no-prompt --tool myecho >output &&
git grep --no-index -h -A2 Merging: output >actual &&
test_cmp expect actual