首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TFS合并不拾取回滚变更集

TFS合并不拾取回滚变更集
EN

Stack Overflow用户
提问于 2015-07-23 07:48:54
回答 1查看 4.1K关注 0票数 8

我遇到了以下TFS问题:

我从主要分支机构中创建了新的分支机构。在此期间,在新分支上发生了一些更改集(让我们指定它们从CS-1到CS-2)。有一段时间,我对主分支进行了修改,该修改已经合并到新的分支上(分支上的新变更集: CS-3)。

在此之后,新的分支发生了一些变化(这产生了从CS-4到CS-5的变化)。另外,我还回滚了CS-3,因此在新分支上创建了新的变更集CS-6。

现在,问题是:哪些变更集应该包含在从新分支到主分支的合并中?从逻辑上讲,应该是: CS-1 - CS-2,CS-4-CS-5和CS-6.但是,真正的结果是: CS-1 - CS-2,CS-4 - CS-5

有谁知道:为什么回滚变更集(CS-6)不包含在合并中?很明显,ChangesetCS-6的回滚并不像往常一样被平等对待。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-23 22:35:29

首先,解释得很好的问题:)。您需要开始使用的选项是“

tf回滚/keepmergehistory

下面的示例解释了我们在执行回滚时可以使用的两个不同选项,以及为什么您得到了上面提到的特定行为。我重新创建了前面提到的整个场景,但是我使用

/keepmergehistory

这一次,当我试图从dev分支合并回主分支时,它确实将回滚更改(CS6)返回到源/主分支。

来自MSDN的解释:

当回滚包含分支或合并更改的更改集时,通常希望在相同源和相同目标之间的将来合并包含这些更改。但是,如果希望将来在同一源和同一目标之间进行合并,则可以使用/keepmergehistory选项来排除过去合并操作中包含的变更集。

例如,可以在以下情况下使用此命令:

  • 在2009年6月30日,您将所有项目从$/BranchA/完全合并到$/BranchB/: c:\workspace> tf合并$/BranchA $/BranchB

您可以签入此合并,作为变更集292的一部分。

  • 在7月,您会对$/BranchA/Util.cs做几处修改。这些变化包括在变更集297、301和305中。
  • 2009年8月1日,您将$/BranchA/Util.cs合并为$/BranchB/Util.cs: c:\workspace> tf合并$/BranchA/Util.cs $/BranchB/Util.cs

您签入更改作为变更集314的一部分。此操作的结果是,您在更改集297、301和305到$/BranchA/Util.cs中所做的编辑现在也应用于$/BranchB/Util.cs。

  • 一周后,您意识到您在7月对$/BranchA/Util.cs所做的编辑不适合$/BranchB/Util.cs。您可以使用rollback命令来否定这些更改。当使用rollback命令回滚合并更改或分支更改时,需要作出决定。
  • 如果您希望在将来的合并中将7月份对$/BranchA/Util.cs所做的更改重新应用于$/BranchB/Util.cs,则应键入以下命令: c:\workspace> tf回滚/changeset:314
  • 如果您希望您在7月对$/BranchA/Util.cs所做的更改永远不会被重新应用到$/BranchB/Util.cs将来的合并中,则应该键入以下命令:
  • c:\workspace> tf回滚/changeset:314 /keepmergehistory
  • 几周后,您将$/BranchA/合并为$/BranchB/: c:\workspace> tf合并$/BranchA $/BranchB
  • 如果您省略了/keepmergehistory选项,合并更改将适用于$/BranchB/Util.cs自changeset 292以来应用于$/BranchA/Util.cs的所有变更集,包括变更集297、301,
  • 换句话说,将来的合并将撤消回滚更改。
  • 如果包含/keepmergehistory选项,合并操作将应用于$/BranchB/Util.cs自changeset 292以来应用于$/BranchA/Util.cs的所有变更集,不包括变更集297、301和305。换句话说,将来的合并不会撤消回滚更改。因此,BranchA上的内容可能与BranchB上的内容不匹配。

MSDN源

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31581202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档