微软已经发布了适用于Visual Studio 2012的Git插件。我认为它非常好用,但是貌似没有选项可以更改默认的Diff工具。更糟糕的是,在ascx代码后台文件上无法进行任何diff操作。它只在主要的.ASCX文件中显示了一个diff选项。
如何
- 在使用git插件时,对代码后台文件进行diff操作?
- 更改diff工具?
微软已经发布了适用于Visual Studio 2012的Git插件。我认为它非常好用,但是貌似没有选项可以更改默认的Diff工具。更糟糕的是,在ascx代码后台文件上无法进行任何diff操作。它只在主要的.ASCX文件中显示了一个diff选项。
如何
你需要修改本地的 .gitconfig 文件,而不是像使用 TFS 时通过 Visual Studio 进行更改。
https://gist.github.com/mkchandler/2377564
Add the following to your global .gitconfig file:
[diff]
tool = diffmerge
[difftool "diffmerge"]
cmd = \"C:\\Program Files\\SourceGear\\Common\\DiffMerge\\sgdm.exe\" \"$LOCAL\" \"$REMOTE\"
[merge]
tool = diffmerge
[mergetool "diffmerge"]
cmd = \"C:\\Program Files\\SourceGear\\Common\\DiffMerge\\sgdm.exe\" -merge -result=\"$PWD/$MERGED\" \"$PWD/$LOCAL\" \"$PWD/$BASE\" \"$PWD/$REMOTE\"
trustExitCode = true
[mergetool]
keepBackup = false
步骤:
安装WinMerge并勾选选项"将WinMerge添加到您的PATH环境变量"。
在Visual Studio 2013中应安装Microsoft GIT提供程序插件。
进入用户git配置,通常在C:\Users\USERNAME\.gitconfig中。
添加以下行或根据.gitconfig内的参数进行更新。
**
[diff]
tool = winmerge
[difftool "winmerge"]
cmd = winmergeu.exe -e -ub -x -wl -u -maximise -dl "base" -dr "mine" \"$LOCAL\" \"$REMOTE\"
[difftool]
prompt = false
现在,如果你在 Visual Studio 中对文件执行 "与未修改内容进行比较..." 操作,WinMerge 应该会自动打开。