当自动合并失败时,如何在TFS中合并CSProj文件

时间:2014-03-17 15:13:47

标签: visual-studio-2012 tfs merge visual-studio-2013

另一位开发人员和我都在TFS Online的同一个项目中添加了一个新文件(通过VS 2013)。 (不同的名字)他检查了他的变化。我做了最新的。它没有合并,而是给了我这个错误:

Conflict [project file path].csproj - Unable to perform the get operation because you have a conflicting edit

我身边没有变化。项目文件未更新。他身边的新文件没有被复制到我的文件系统中。

我们尚未在TFS在线配置任何合并规则,它都是默认设置。

在解决方案资源管理器中右键单击项目不会显示合并选项。在Source Control Explorer中,我可以右键单击CSProj文件,转到Merge,但这会打开一个窗口,找到要合并它的内容,并且只允许您从同一路径中选择,而不是选择版本。它抱怨说它不是自己的一个分支,也不能合并。

以下是CSProj版本中的冲突行:

检查CS项目,1390行:

<Content Include="TextFile2.txt" />

我的CS项目,1390行:

<Content Include="TextFile1.txt" />

1 个答案:

答案 0 :(得分:9)

从Visual Studio中获取最新信息会触发合并。 CSPROJ是一个XML文件,因此默认情况下应该在最新时自动合并,除非conflicts中Visual Studio将打开冲突解决对话框,以便您可以查看对他们的编辑。

您可以从Source Control Explorer获取最新信息,右键单击解决方案根文件夹,然后点击Get Latest Version。如果存在冲突,则应弹出Resolve Conflicts对话框。如果文件已自动合并,您应该在Diff对话框中看到它(右键单击该文件并单击Compare)。

如果未显示Resolve Conflicts窗口:

  1. 打开Pending Changes标签。
  2. 如果您有多个工作区,请确保选择了正确的工作区。
  3. 点击Actions菜单 - &gt; Resolve Conflicts