If rerere is enabled, no pathnames are given, and mergetool is run from a subdirectory, mergetool always prints "No files need merging". Fix the bug. This regression was introduced in 57937f70a09c12ef484c290865dac4066d207c9c (v2.11.0). Changes since v4: * Revert to Junio's original proposal for 14/14. (Junio: Please feel free to take author credit on 14/4; it's now 100% your code.) * Do: # rev-parse provides the -- needed for 'set' eval "set $(git rev-parse --sq -- "$@")" instead of: eval "set -- $(git rev-parse --sq -- "$@")" shift for both 02/14 and 14/14. Richard Hansen (14): .mailmap: Use my personal email address as my canonical rev-parse doc: pass "--" to rev-parse in the --prefix example t7610: update branch names to match test number t7610: Move setup code to the 'setup' test case. t7610: use test_when_finished for cleanup tasks t7610: don't rely on state from previous test t7610: run 'git reset --hard' after each test to clean up t7610: delete some now-unnecessary 'git reset --hard' lines t7610: always work on a test-specific branch t7610: don't assume the checked-out commit t7610: spell 'git reset --hard' consistently t7610: add test case for rerere+mergetool+subdir bug mergetool: take the "-O" out of $orderfile mergetool: fix running in subdir when rerere enabled .mailmap | 2 + Documentation/git-rev-parse.txt | 3 +- git-mergetool.sh | 21 ++- t/t7610-mergetool.sh | 281 ++++++++++++++++++++++++---------------- 4 files changed, 187 insertions(+), 120 deletions(-) -- 2.11.0.390.gc69c2f50cf-goog