Code

mergetool: Skip autoresolved paths
authorDavid Aguilar <davvid@gmail.com>
Tue, 17 Aug 2010 09:22:46 +0000 (02:22 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 17 Aug 2010 20:58:13 +0000 (13:58 -0700)
commitbb0a484e985ef8d9bbbbeb172b1fcf4982634bef
tree771cfd9a6d36a707b99e47082b1bce376b49fa7b
parent3235b7053c45a734c1cdf9b117bda68b7ced29c9
mergetool: Skip autoresolved paths

When mergetool is run without path limiters it loops
over each entry in 'git ls-files -u'.  This includes
autoresolved paths.

Teach mergetool to only merge files listed in 'rerere status'
when rerere is enabled.

There are some subtle but harmless changes in behavior.
We now call cd_to_toplevel when no paths are given.
We do this because 'rerere status' paths are always relative
to the root.  This is beneficial for the non-rerere use as
well in that mergetool now runs against all unmerged files
regardless of the current directory.

This also slightly tweaks the output when run without paths
to be more readable.

The old output:

Merging the files: foo
bar
baz

The new output:

Merging:
foo
bar
baz

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-mergetool.sh
t/t7610-mergetool.sh