Skip to content

Commit 1c0f3d2

Browse files
hartworkgitster
authored andcommitted
difftool/mergetool: add diffuse as merge and diff tool
This adds diffuse as a built-in merge tool. Signed-off-by: Sebastian Pipping <[email protected]> Signed-off-by: David Aguilar <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 8b73322 commit 1c0f3d2

6 files changed

Lines changed: 14 additions & 11 deletions

File tree

Documentation/git-mergetool.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ OPTIONS
2727
Use the merge resolution program specified by <tool>.
2828
Valid merge tools are:
2929
kdiff3, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, ecmerge,
30-
tortoisemerge and opendiff
30+
diffuse, tortoisemerge and opendiff
3131
+
3232
If a merge resolution program is not specified, 'git-mergetool'
3333
will use the configuration variable `merge.tool`. If the

Documentation/merge-config.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ merge.tool::
2323
Controls which merge resolution program is used by
2424
linkgit:git-mergetool[1]. Valid built-in values are: "kdiff3",
2525
"tkdiff", "meld", "xxdiff", "emerge", "vimdiff", "gvimdiff",
26-
"ecmerge", tortoisemerge and
26+
"diffuse", "ecmerge", "tortoisemerge", and
2727
"opendiff". Any other value is treated is custom merge tool
2828
and there must be a corresponding mergetool.<tool>.cmd option.
2929

contrib/completion/git-completion.bash

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1174,7 +1174,8 @@ _git_mergetool ()
11741174
--tool=*)
11751175
__gitcomp "
11761176
kdiff3 tkdiff meld xxdiff emerge
1177-
vimdiff gvimdiff ecmerge opendiff
1177+
vimdiff gvimdiff ecmerge diffuse
1178+
opendiff
11781179
" "" "${cur##--tool=}"
11791180
return
11801181
;;

contrib/difftool/git-difftool-helper

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
#!/bin/sh
22
# git-difftool-helper is a GIT_EXTERNAL_DIFF-compatible diff tool launcher.
3-
# It supports kdiff3, kompare, tkdiff, xxdiff, meld, opendiff,
4-
# emerge, ecmerge, vimdiff, gvimdiff, and custom user-configurable tools.
53
# This script is typically launched by using the 'git difftool'
64
# convenience command.
75
#
@@ -55,6 +53,10 @@ launch_merge_tool () {
5553
"$merge_tool_path" "$LOCAL" "$REMOTE"
5654
;;
5755

56+
diffuse)
57+
"$merge_tool_path" "$LOCAL" "$REMOTE" | cat
58+
;;
59+
5860
vimdiff)
5961
"$merge_tool_path" -d -c "wincmd l" "$LOCAL" "$REMOTE"
6062
;;
@@ -164,9 +166,9 @@ if test -z "$merge_tool"; then
164166
if test -n "$DISPLAY"; then
165167
# If gnome then prefer meld, otherwise, prefer kdiff3 or kompare
166168
if test -n "$GNOME_DESKTOP_SESSION_ID" ; then
167-
merge_tool_candidates="meld kdiff3 kompare tkdiff xxdiff gvimdiff"
169+
merge_tool_candidates="meld kdiff3 kompare tkdiff xxdiff gvimdiff diffuse"
168170
else
169-
merge_tool_candidates="kdiff3 kompare tkdiff xxdiff meld gvimdiff"
171+
merge_tool_candidates="kdiff3 kompare tkdiff xxdiff meld gvimdiff diffuse"
170172
fi
171173
fi
172174
if echo "${VISUAL:-$EDITOR}" | grep 'emacs' > /dev/null 2>&1; then

contrib/difftool/git-difftool.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ OPTIONS
2525
--tool=<tool>::
2626
Use the diff tool specified by <tool>.
2727
Valid merge tools are:
28-
kdiff3, kompare, tkdiff, meld, xxdiff, emerge,
29-
vimdiff, gvimdiff, ecmerge, and opendiff
28+
kdiff3, kompare, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff,
29+
ecmerge, diffuse and opendiff
3030
+
3131
If a diff tool is not specified, 'git-difftool'
3232
will use the configuration variable `diff.tool`. If the

git-mergetool.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -414,9 +414,9 @@ fi
414414
if test -z "$merge_tool" ; then
415415
if test -n "$DISPLAY"; then
416416
if test -n "$GNOME_DESKTOP_SESSION_ID" ; then
417-
merge_tool_candidates="meld kdiff3 tkdiff xxdiff tortoisemerge gvimdiff"
417+
merge_tool_candidates="meld kdiff3 tkdiff xxdiff tortoisemerge gvimdiff diffuse"
418418
else
419-
merge_tool_candidates="kdiff3 tkdiff xxdiff meld tortoisemerge gvimdiff"
419+
merge_tool_candidates="kdiff3 tkdiff xxdiff meld tortoisemerge gvimdiff diffuse"
420420
fi
421421
fi
422422
if echo "${VISUAL:-$EDITOR}" | grep 'emacs' > /dev/null 2>&1; then

0 commit comments

Comments
 (0)