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

Dan*_*ler 4 merge tfs visual-studio-2012 visual-studio-2013

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

Conflict [project file path].csproj - Unable to perform the get operation because you have a conflicting edit
Run Code Online (Sandbox Code Playgroud)

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

我们没有在TFS在线配置任何合并规则,它都是默认设置.

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

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

在1390行的CS项目中检查:

<Content Include="TextFile2.txt" />
Run Code Online (Sandbox Code Playgroud)

我的CS项目,1390行:

<Content Include="TextFile1.txt" />
Run Code Online (Sandbox Code Playgroud)

KMo*_*raz 9

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

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

如果Resolve Conflicts窗口没有出现:

  1. 打开Pending Changes选项卡.
  2. 如果您有多个工作区,请确保选择了正确的工作区.
  3. 单击Actions菜单 - >Resolve Conflicts