我们有一个名为“Main”的分支。 2012年7月,我为我们项目的下一个版本创建了一个新的分支机构,名为“阶段3”。自那时起我们一直在努力,但不时有其他更改会应用于Main。与TFS 2012合并试图通过已经合并的更改
今年5月,我们进行了从主到第三阶段的合并,并进行了一些更改,这一切都很好。
在当时和现在之间,我们将TFS服务器从2008年升级到2012年更新3.(我没有参与“升级”,但我相信它是在具有某种备份/恢复的新服务器上安装的的数据。)我们已经有一些与此有关的其他问题。
上周我试图执行从主到第三阶段的另一个合并。我选择了“选定的变更集”,因为我们在第三阶段的分支做了大量的返工工作,所以合并变更非常困难 - 所以我想一点一点地做他们。
但是,我很惊讶地发现Visual Studio试图合并跨越2011年7月 - 分支之前的一个好年份(实际上是对我们项目的这部分进行的第一次修改)。
奇怪的是,如果我查看阶段3解决方案的历史记录,我可以扩展它并查看所有这些更改。所以TFS似乎知道他们已经应用了。
我试图合并一些早期的变化,看看会发生什么。其中包含的唯一更改是与已重命名或删除的项目有关。例如,我们重命名了我们的解决方案,因此TFS想要将SLN的副本与旧名称分支并合并。或者我们有一些图像在两个分支中都被删除,但在这次新合并时没有。
所以我支持这一点,并试图从今年5月份开始合并所有内容 - 即在我们上次合并之前。这带来了一系列可怕的变化 - 各种各样的事情,包括常规合并/编辑类型的变化。所以我也支持了!
我们已经从阶段3创建了另一个分支。我已经能够在两个分支之间进行合并了。我认为它是在TFS升级前一周左右创建的。但它没有遇到这个问题。
我们还有其他来自Main的分支。这些正在经历这个问题,因为TFS想要应用它已经做出的改变。
我正在使用VS2012更新3来进行合并。我也尝试过VS2010以防万一,但是这样做。同事也尝试过并证实了相同的症状。
我不认为这有助于我们的第三阶段与主要阶段大不相同,因此合并任何事情都非常困难。
有谁知道我该如何最好地解决这个问题?我有点担心做一些我可能后悔的事情!
这不是一个答案,但在TFS中合并和分支是一个巨大的问题,随着时间的推移,你只会遇到更多的问题。避免这些问题的最佳建议实际上是从TFS转向使用竞争的VCS工具。 –
对于我们来说,目前这不是一个真正的选择,因为组织现在已经投入太多TFS。我们多年来一直在使用TFS来源,并且在此之前从未真正有任何问题。 (嗯,我们还没有能够忍受。) – John
MS有一个原因是为了实现git作为他们的TFS SCM引擎的一个选项,尽管它不是'真正的'git,有一些妥协来适应它采用TFS方式集中存储。拥抱...... :) – gbjbaanb