Note: since Git 2.22 (Q2 2019), the combinations of {diff,merge}.{tool,guitool}
configuration variables serve as fallback settings of each other in a sensible order.
See commit 6c22d71, commit 7f978d7, commit 60aced3, commit 884630b, commit 05fb872 (29 Apr 2019), and commit 57d93c1, commit e9d309e (24 Apr 2019) by Denton Liu (Denton-L
).
(Merged by Junio C Hamano -- gitster
-- in commit 85ac27e, 19 May 2019)
In your case, since difftool is not defined:
difftool
: fallback on merge.guitool
In git-difftool.txt, it says
'git difftool
' falls back to 'git mergetool
' config variables when the
difftool equivalents have not been defined.
However, when diff.guitool
is missing, it doesn't fallback to
anything. Make git-difftool fallback to merge.guitool
when diff.guitool
is
missing.
The documentation now includes:
git difftool -g/--gui
When 'git difftool
' is invoked with the -g
or --gui
option, the default diff tool will be read from the configured diff.guitool
variable instead of diff.tool
.
The --no-gui
option can be used to override this setting.
If diff.guitool
is not set, we will fallback in the order of merge.guitool
,
diff.tool
, merge.tool
until a tool is found.