我们最近尝试了一个大的“樱桃挑选”合并。首先,我们从一个子开发分支完全合并到父Main分支,然后将Main分支完全合并到另一个子开发分支,然后我们尝试将第二个Development分支的cherry pick合并回到merge。有很多签到,包括重命名和删除;当它不工作时,我们做了一堆TFPT回滚。
我们有什么选择可以在这里恢复?像baseless,force等等合并?回到某个时间点,不知怎的,再试一次?
答案 0 :(得分:1)
我认为目标是让Main看起来像Dev2?这应该会让你到达那里,或者非常接近:
tf merge $/project/Dev2 $/project/Main -r -force -version:1~T
tf resolve -auto:accepttheirs
使用'tf folderdiff'来清理任何延迟的差异。
另一个主要选择通常是删除&重新创建目标分支,但这仅在目标是分支树中的叶子时才有效。在你的情况下删除Main将破坏它与Dev1和树的其余部分的关系。此外,我建议那些沿着这条路走下去的人要么破坏错误的分支(vs简单的删除),要么为重新分支的副本选择一个新的名称,以避免在某些版本的TFS 2005/2008中出现罕见但是噩梦般的错误。 (2010年不应该有这些问题)