aboutsummaryrefslogtreecommitdiff
path: root/git-mergetool--lib.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2018-10-30 15:43:48 +0900
committerJunio C Hamano <gitster@pobox.com>2018-10-30 15:43:49 +0900
commit87c15d1ca969e978fb8d04bc486a28025d71e6b2 (patch)
treeb15912a355fa5d3c487dca3e25c5d5723e283b6d /git-mergetool--lib.sh
parent97ffca6cc74e5313a7d503f76fe2a99f13750c69 (diff)
parentc217b9384e8ecbde866bfb09e88f1d7f87bc7b29 (diff)
downloadgit-87c15d1ca969e978fb8d04bc486a28025d71e6b2.tar.xz
Merge branch 'dl/mergetool-gui-option'
"git mergetool" learned to take the "--[no-]gui" option, just like "git difftool" does. * dl/mergetool-gui-option: doc: document diff/merge.guitool config keys completion: support `git mergetool --[no-]gui` mergetool: accept -g/--[no-]gui as arguments
Diffstat (limited to 'git-mergetool--lib.sh')
-rw-r--r--git-mergetool--lib.sh16
1 files changed, 11 insertions, 5 deletions
diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh
index 9a8b97a2ab..83bf52494c 100644
--- a/git-mergetool--lib.sh
+++ b/git-mergetool--lib.sh
@@ -350,17 +350,23 @@ guess_merge_tool () {
}
get_configured_merge_tool () {
- # Diff mode first tries diff.tool and falls back to merge.tool.
- # Merge mode only checks merge.tool
+ # If first argument is true, find the guitool instead
+ if test "$1" = true
+ then
+ gui_prefix=gui
+ fi
+
+ # Diff mode first tries diff.(gui)tool and falls back to merge.(gui)tool.
+ # Merge mode only checks merge.(gui)tool
if diff_mode
then
- merge_tool=$(git config diff.tool || git config merge.tool)
+ merge_tool=$(git config diff.${gui_prefix}tool || git config merge.${gui_prefix}tool)
else
- merge_tool=$(git config merge.tool)
+ merge_tool=$(git config merge.${gui_prefix}tool)
fi
if test -n "$merge_tool" && ! valid_tool "$merge_tool"
then
- echo >&2 "git config option $TOOL_MODE.tool set to unknown tool: $merge_tool"
+ echo >&2 "git config option $TOOL_MODE.${gui_prefix}tool set to unknown tool: $merge_tool"
echo >&2 "Resetting to default..."
return 1
fi