vsDiffMerge 未作为 Sourcetree 外部合并工具运行

vsDiffMerge 未作为 Sourcetree 外部合并工具运行

我正在尝试将 vsDiffMerge(来自 Visual Studio Professional 2017)设置为 SourceTree 的外部合并/差异工具。但是,当我尝试使用外部工具解决合并冲突时,什么也没有发生。我知道我之前让它工作了,但我最近不得不重新安装 Sourcetree,现在我无法让它工作。

按照本文,我转到工具 > 选项 > 差异。我设置了以下内容:

  • 外部差异工具和合并工具Custom
  • Diff 命令和 Merge 命令均用于"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\vsDiffMerge.exe"
  • 不同的命令参数"$LOCAL" "$REMOTE" "Source" "Target" //t
  • 将命令参数合并到"$LOCAL" "$REMOTE" "$BASE" "$MERGED" //m

合并时,我右键单击有合并冲突的文件,然后选择“解决冲突”>“启动外部合并工具”。我短暂地看到“Visual Merge In Progress”消息,并且我可以在 SourceTree 中看到临时文件(后缀为 _BACKUP、_BASE 和 _LOCAL 的文件)已创建,但不久之后消息消失,临时文件消失,合并工具从未打开,冲突未解决。无论我是否已打开 Visual Studio,都会发生同样的情况。

我还尝试交换 $REMOTE 和 $LOCAL 的顺序这个答案,但结果相同。

我的设置方式有问题吗?我还应该检查或尝试其他什么吗?

答案1

我也在全新安装上尝试过这种方法,但是没有用......

但是,您可以在 Visual Studio 的 git 设置中将 Visual Studio 设置为外部合并工具:

  1. 转到 Visual Studio 中的“团队资源管理器”
  2. 选择任意仓库
  3. 转到“设置”->“全局设置”
  4. 在“差异和合并工具”的底部,您可以选择“使用 Visual Studio”: 在此处输入图片描述

相关内容