git似乎发生了一些变化,这使得gvim作为diff工具不能正常工作。具体来说,我总是习惯使用gvim -geometry标志来最大化窗口。现在,我最终将其中一个窗口留空(空/零行文件)。
答案 0 :(得分:3)
我现在设置了以下别名:
alias gitdg =' git difftool --noprompt --extcmd =" gvim -d --nofork -geometry 220x80 + 2000 + 40" '
请注意单引号和双引号的位置,以保持zsh shell的快乐。
我使用了gvim选项" -geometry"将diff窗口配置为220行x 80列。 " + 2000 + 40"表示窗口的左上角水平偏移2000像素,垂直偏离所有显示器左上角80像素,因此窗口显示在我的双显示器设置的右侧监视器上。尝试将其设置为" -geometry 160x40 + 60 + 20"看到变化的影响。
答案 1 :(得分:0)
在Windows Server 2012R2上,向我的.gitconfig添加以下内容也对我有用。我的经验是-d和-f对于我的设置不是必需的。即使是Windows,也请确保使用正斜杠“ /”作为路径信息。
[alias]
d = difftool
[diff]
tool = gvimdiff
[difftool]
prompt = false
[difftool "gvimdiff"]
path = "C:/Program Files (x86)/Vim/vim81/gvim.exe"
样品运行...
c:\>git d index.html
我还发现我在_vimrc中为diffexpr定义了一个函数,需要像这样注释掉...
"set diffexpr=MyDiff()
...允许“新”内置差异在gVim中工作。通过这些更改,一切都可以在gui vim中工作。