23

微软为 Visual Studio 2012 发布了一个 Git 插件。我发现它非常好,但似乎没有任何选项可以更改默认的 Diff 工具。更糟糕的是,我根本无法对 ascx 代码隐藏文件进行比较。它仅显示主 .ASCX 文件的差异选项。

你怎么

  1. 使用 git 插件时区分代码隐藏文件?
  2. 更改差异工具?
4

2 回答 2

33

您必须更改本地 .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
于 2013-06-08T14:26:20.143 回答
15

脚步 :

  1. 使用“ WinMerge added to your PATH environment variable ”安装 Winmerge ,您必须在 winmerge 安装期间选中该复选框。

  2. Microsoft GIT 提供程序插件应安装在 Visual Studio 2013 中。

  3. 转到用户 git config,一般在“ C:\Users\USERNAME\.gitconfig

  4. 添加以下行或根据.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 应该会自动打开。

于 2014-08-05T00:21:52.487 回答