如何在 git 中使用不同的合并和差异工具?
How to use different merge and diff tool in git?
我更喜欢使用 meld
作为比较工具。但是它没有快速解决所有简单冲突的选项,所以在合并的情况下我想使用 kdiff3
我已经将 merge.tool
设置为 kdiff3,将 diff.guitool
设置为 meld,但 git difftool
仍然总是 运行 kdiff3
[merge]
tool = kdiff3
conflictstyle = diff3
[diff]
guitool = meld
renames = copies
mnemonicPrefix = true
[difftool]
prompt = false
如何制作git difftool
运行meld
?
diff.guitool
only applies if you use the --gui
flag.
设置 diff.tool
和 merge.tool
应该使 git difftool
和 git mergetool
使用不同的工具:
[merge]
tool = kdiff3
[diff]
tool = meld
注意:自 Git 2.22(2019 年第 2 季度)起,{diff,merge}.{tool,guitool}
配置变量的组合以合理的顺序作为彼此的后备设置。
参见 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
)。
(由 Junio C Hamano -- gitster
-- in commit 85ac27e 合并,2019 年 5 月 19 日)
在您的情况下,由于未定义 difftool:
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.
但是,当缺少 diff.guitool
时,它不会回退到
任何事物。当 diff.guitool
为 git-difftool 后退到 merge.guitool
不见了。
The documentation 现在包括:
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.
我更喜欢使用 meld
作为比较工具。但是它没有快速解决所有简单冲突的选项,所以在合并的情况下我想使用 kdiff3
我已经将 merge.tool
设置为 kdiff3,将 diff.guitool
设置为 meld,但 git difftool
仍然总是 运行 kdiff3
[merge]
tool = kdiff3
conflictstyle = diff3
[diff]
guitool = meld
renames = copies
mnemonicPrefix = true
[difftool]
prompt = false
如何制作git difftool
运行meld
?
diff.guitool
only applies if you use the --gui
flag.
设置 diff.tool
和 merge.tool
应该使 git difftool
和 git mergetool
使用不同的工具:
[merge]
tool = kdiff3
[diff]
tool = meld
注意:自 Git 2.22(2019 年第 2 季度)起,{diff,merge}.{tool,guitool}
配置变量的组合以合理的顺序作为彼此的后备设置。
参见 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
)。
(由 Junio C Hamano -- gitster
-- in commit 85ac27e 合并,2019 年 5 月 19 日)
在您的情况下,由于未定义 difftool:
difftool
: fallback onmerge.guitool
In git-difftool.txt, it says
'
git difftool
' falls back to 'git mergetool
' config variables when the difftool equivalents have not been defined.但是,当缺少
diff.guitool
时,它不会回退到 任何事物。当diff.guitool
为 git-difftool 后退到merge.guitool
不见了。
The documentation 现在包括:
git difftool -g/--gui
When '
git difftool
' is invoked with the-g
or--gui
option, the default diff tool will be read from the configureddiff.guitool
variable instead ofdiff.tool
.
The--no-gui
option can be used to override this setting.If
diff.guitool
is not set, we will fallback in the order ofmerge.guitool
,diff.tool
,merge.tool
until a tool is found.