Meld 能够一次加载多个文件(以选项卡形式)。
然而当与 一起使用时git difftool
,Git 会询问您是否要查看每个文件(这可能会很慢而且很烦人,因为必须不断打开和关闭 meld)。
有没有办法将 meld 与选项卡中的每个文件一起加载?
(我知道为什么选择这个默认设置,差异舱会很大,但是我发现这样做非常方便)。
答案1
我目前无法对 meld 进行评论,因为没有安装它,但对于 kdiff3(*),该git difftool --dir-diff
命令运行良好,例如比较任意两个远程分支:
git difftool --dir-diff origin/branch1..origin/branch2
对于 kdiff3,这会在一个窗格中列出所有已更改的文件,而所选文件的差异则显示在另一个窗格中 - 可以想象 meld 会做类似的事情。如果有大量更改,则可能需要一段时间才能显示差异。
(*)附注-设置kdiff:在 Windows 下,可以从以下位置安装 kdiff3这里。然后可以通过编辑和设置以下内容将 Git 配置为使用 kdiff3 C:\Users\<your username>\.gitconfig
(假设下面的 kdiff3 路径正确,并替换现有部分(如果存在)):-
[diff]
tool = kdiff3
[difftool]
prompt = false
[difftool "kdiff3"]
cmd = "\"C:/Program Files/KDiff3/kdiff3.exe\" \"$LOCAL\" \"$REMOTE\""
答案2
类似的事情也可以通过以下方式实现git-diffall(它不是内置的,您必须点击该链接并安装它)。它的语法与 类似git diff
,但它会以目录比较模式打开 difftool,在一个屏幕上显示所有修改过的文件。您可以双击它们以在选项卡中打开比较。