1

I am calling the MergeContent method on a TFS workspace (App.Instance.TFSWorspace in my example) as shown below:

bool result = App.Instance.TFSWorkspace.MergeContent(Conflict, true);

This results in 'result' being set to false but the Merge Tool is never shown even though the second parameter explicity states to use the external merge tool.

The code was originally placed in a RelayCommand following the MVVM model. Just to make sure this wasn't the issue I moved it into the code behind and the same thing still happens. Also, I'm using the default TFS tool, I don't have any 3rd party compare/merge tool configured.

Does anyone have any idea why this would happen?

4

1 回答 1

1

发生这种情况的几个潜在原因:

  1. diffmerge.exe 不在您正在运行的程序的路径中 默认的外部合并工具是 diffmerge.exe,可在 \Microsoft Visual Studio 10.0\Common7\IDE 中找到(可能因您的版本而异)。如果这不在您的程序路径中,则在发生冲突时将无法启动 diffmerge 过程

  2. 程序没有 UI 外壳 如果您的程序是服务或 Web 应用程序,则可能会发生这种情况。您可能不是这种情况,但从描述中我不能完全确定

最有可能的问题是上面的#1。我会先检查一下。

于 2012-09-06T13:11:30.480 回答