使用Git插件时Visual Studio中的diff工具

时间:2013-05-21 16:04:11

标签: git visual-studio git-difftool

微软发布了Git plugin for Visual Studio 2012。我发现它很棒,但似乎没有任何选项可以更改默认的Diff工具。更糟糕的是,我无法对ascx代码隐藏文件做差异。它只显示主.ASCX文件的diff选项。

你好吗

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

2 个答案:

答案 0 :(得分:28)

您必须更改本地.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

答案 1 :(得分:12)

步骤:

  1. 使用“ WinMerge添加到您的PATH环境变量”安装Winmerge,您必须在winmerge安装期间选中该复选框。

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

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

  4. 添加以下行或根据.gitconfig

  5. 中的参数进行更新

    **

    [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上“与未修改的...比较”,应该自动打开。