This series splits the git-mergetool--lib.sh file into separate tool scriptlets that define the commands for diff and merge. David Aguilar (4): difftool--helper: Make style consistent with git mergetool--lib: Make style consistent with git mergetool--lib: Refactor tools into separate files mergetools/meld: Use '--output' when available Makefile | 11 ++ git-difftool--helper.sh | 18 ++- git-mergetool--lib.sh | 394 ++++++++++------------------------------------ mergetools/araxis | 21 +++ mergetools/bc3 | 20 +++ mergetools/defaults | 46 ++++++ mergetools/diffuse | 17 ++ mergetools/ecmerge | 16 ++ mergetools/emerge | 23 +++ mergetools/kdiff3 | 24 +++ mergetools/kompare | 7 + mergetools/meld | 40 +++++ mergetools/opendiff | 16 ++ mergetools/p4merge | 10 ++ mergetools/tkdiff | 12 ++ mergetools/tortoisemerge | 17 ++ mergetools/vim | 44 +++++ mergetools/xxdiff | 25 +++ 18 files changed, 441 insertions(+), 320 deletions(-) create mode 100644 mergetools/araxis create mode 100644 mergetools/bc3 create mode 100644 mergetools/defaults create mode 100644 mergetools/diffuse create mode 100644 mergetools/ecmerge create mode 100644 mergetools/emerge create mode 100644 mergetools/kdiff3 create mode 100644 mergetools/kompare create mode 100644 mergetools/meld create mode 100644 mergetools/opendiff create mode 100644 mergetools/p4merge create mode 100644 mergetools/tkdiff create mode 100644 mergetools/tortoisemerge create mode 100644 mergetools/vim create mode 100644 mergetools/xxdiff $ git describe --dirty v1.7.6-476-g572925c $ git version git version 1.7.6.476.g57292 $ ./t7610-mergetool.sh ok 1 - setup ok 2 - custom mergetool ok 3 - mergetool crlf ok 4 - mergetool in subdir ok 5 - mergetool on file in parent dir ok 6 - mergetool skips autoresolved ok 7 - mergetool merges all from subdir ok 8 - mergetool skips resolved paths when rerere is active ok 9 - deleted vs modified submodule ok 10 - file vs modified submodule ok 11 - submodule in subdirectory ok 12 - directory vs modified submodule # passed all 12 test(s) 1..12 $ ./t7800-difftool.sh ok 1 - setup ok 2 - custom commands ok 3 - difftool ignores bad --tool values ok 4 - difftool honors --gui ok 5 - difftool --gui works without configured diff.guitool ok 6 - GIT_DIFF_TOOL variable ok 7 - GIT_DIFF_TOOL overrides ok 8 - GIT_DIFFTOOL_NO_PROMPT variable ok 9 - GIT_DIFFTOOL_PROMPT variable ok 10 - difftool.prompt config variable is false ok 11 - difftool merge.prompt = false ok 12 - difftool.prompt can overridden with -y ok 13 - difftool.prompt can overridden with --prompt ok 14 - difftool last flag wins ok 15 - difftool + mergetool config variables ok 16 - difftool.<tool>.path ok 17 - difftool --extcmd=cat ok 18 - difftool --extcmd cat ok 19 - difftool -x cat ok 20 - difftool --extcmd echo arg1 ok 21 - difftool --extcmd cat arg1 ok 22 - difftool --extcmd cat arg2 # passed all 22 test(s) 1..22 -- 1.7.6.476.g57292 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html