【发布时间】:2018-04-03 14:37:25
【问题描述】:
在我的默认集合中,我有一个团队项目。在那个团队项目中,我有 2 个分支:PROD 和 DEV。 最近,我主要从事 DEV 工作。因此,由于 PROD 和 DEV 之间变更集的数量是共同的,所以我遇到了当前的问题:
其中一个文件在 PROD (2470) 中的变更集编号低于 DEV (2539) 中的变更集编号(从我在合并工具中可以看到)
当我第一次从 PROD 合并到 DEV 时,TFS 没有看到需要合并的文件。
我有很多编译错误。所以我不得不在 DEV 中修改文件,进行签入,然后在合并期间,TFS 看到它并在解决冲突选项卡中要求我处理该文件。
但是,
在合并工具中,DEV 中的所有新代码都会被 PROD 中的代码覆盖。我不明白 ! 例如,DEV 中的文件有一些新的 using 指令。但是合并工具删除了它们,因为它正在选择 PROD 文件。所以大部分新代码都被较低的变更集隐藏了。
发生了什么事?我害怕现在合并或使用 TFS!
你有类似的问题吗?我能做什么?
添加了源浏览器树的图片: source explorer tree
【问题讨论】:
-
另一个例子,如果PROD中存在一些新代码,它会从DEV中删除。我在 PROD 的一个类中添加了新成员,合并后,TFS 自动从合并文件中删除它们,就像它教导 PROD 中的成员是旧的并且在 DEV 中被删除一样。
-
您能否详细说明分支是如何创建的?我从你的描述中假设 PROD 是 DEV 的孩子?在这种情况下,如果在 Prod 中进行了更改,则可以将它们合并到 DEV。
-
您是否在合并过程中签入了一些文件而不是解决冲突?合并时,是否选择了最新版本的 DEV(签入代码后)?你有比较过最新的 DEV 和 PROD 吗?
-
@HamidShahid 开发是由 PRODuction 制作的。这也是我所期待的。检测到更改,但就像 TFS 认为 PROD 太旧,并且由于没有冲突,它会从 PROD 中删除新代码并将其合并到 DEV 中而无需通知。
-
@PatrickLu-MSFT 在合并过程中我没有签入某些文件。合并时,我使用最新版本的 PROD(我想将 PROD 合并到 DEV 中)。最新的 DEV 具有新功能,PROD 还修复了一些小错误。
标签: tfs merge-conflict-resolution