我们正在使用 TF 服务。根据最佳实践,我们执行频繁的合并。
合并工具在处理我们的项目文件的合并方面做得不好。我们得到了视图、控制器,甚至我们的PublishProfiles文件夹的副本。
我很难相信 TFS 没有经过优化来处理像骗子这样微不足道的事情。我们的控制器、EDMX 文件和视图中的逻辑应该更复杂地合并,但处理得更好。
我们做错了什么吗?更具体地说,是否有 TFS 的选项或设置可以更好地处理此类问题。
我们正在使用 TF 服务。根据最佳实践,我们执行频繁的合并。
合并工具在处理我们的项目文件的合并方面做得不好。我们得到了视图、控制器,甚至我们的PublishProfiles文件夹的副本。
我很难相信 TFS 没有经过优化来处理像骗子这样微不足道的事情。我们的控制器、EDMX 文件和视图中的逻辑应该更复杂地合并,但处理得更好。
我们做错了什么吗?更具体地说,是否有 TFS 的选项或设置可以更好地处理此类问题。
这是 Visual Studio 2010 附带的不太好的合并工具的一个已知问题,而此 Visual Studio 2012 有一个完全更新的合并工具,可以在 XML 文件之间进行上下文合并,这大大降低了这些类型问题出现的机会。由于您在 Visual Studio 2012 中看到了这一点,因此我很乐意看到几个出错的示例。自从升级到 Visual Studio 2012 以来,我没有遇到过重大问题。
作为最佳实践,我倾向于在添加新文件之前始终执行 Get-Latest。而且我总是在得到重新编译的解决方案后尽快签入。当您在同一个分支上工作时,这会减少出现这些问题的机会。但是,在两个分支之间进行合并时,您可能仍然会遇到这些类型的问题。
此外,您可以为特定文件扩展名设置自定义合并工具,而不是对所有文件类型使用 Visual Studio 2012 合并工具,这样您就可以使用任何商业或开源合并工具来代替默认的合并工具。那里有很多很好的例子:
您的里程可能会因不同的工具而异。
在一个只有 3 名开发人员的团队中,这个问题对 VS2013 和 TFS2013 影响很大。我能找到的最好办法是在设置菜单中禁用自动冲突解决。 http://donovanbrown.com/post/I-dont-trust-2012-Auto-merge-but-it-does-it-automatically-.aspx