删除TFS中分支中的合并历史记录

时间:2010-06-10 20:48:10

标签: visual-studio version-control tfs

假设我有一个主分支和一个dev分支。 假设我将一些东西从dev合并到main中。

  • 我签入合并
  • 现在我决定“哎呀,dev分支还没准备好让我合并到main中。”
  • 我想告诉TFS:从main中删除该更改集并忘记合并曾发生过。

回滚变更集非常简单 - 我可以使用TFS powertools ROLLBACK命令。在主分支上(使用/ changeset / recursive标志)

但是,我会从回滚中收到一条警告,说明文件的合并历史记录尚未删除。

效果:稍后,当dev准备好合并到main时,之前回滚的文件中的更改不会合并到Main中(这是因为TFS“认为”那些合并已经完成。

我的目标: 当我回滚时,让TFS删除合并历史记录,这样当我稍后将dev合并到main时,一切都会合并。

我该怎么做?

BTW:我正在使用TFS 2008 SP1

2 个答案:

答案 0 :(得分:2)

TFS 2008中的回滚并不是那么好。它本质上是对以前版本的重新检入。由于您丢失了合并历史记录,因此下次执行合并时可能需要/force从命令行进行合并。那应该让它忽略前一个合并历史就在那里的事实。

答案 1 :(得分:1)

我遇到了类似的问题。我认为可能对你有所帮助的是tf.exe merge / discard选项。这允许您执行的是执行假文件合并并从合并历史记录中删除更改而不实际执行合并。

http://msdn.microsoft.com/en-us/library/bd6dxhfy(v=vs.80).aspx

希望这有帮助!