如何在 TFS 中恢复回滚的更改集?

Posted

技术标签:

【中文标题】如何在 TFS 中恢复回滚的更改集?【英文标题】:How do you recover a rolled back change set in TFS? 【发布时间】:2015-02-28 21:42:16 【问题描述】:

在 Visual Studio 2013 Update 3 中,我不小心签入了一个未编译、正在进行中的变更集,我打算搁置该变更集以供同事使用。我立即回滚了变更集。坏我。

有没有办法将坏/回滚的变更集恢复为待处理的变更,以便我(或我的同事)可以继续处理它?我在 UI 中没有看到任何内容,不得不手动拉出每个文件并手动构建待处理的更改。最初编写代码只需要 20 分钟,所以没什么大不了的(这是我的错误),但我很好奇是否有更好的方法。

【问题讨论】:

这当然不是一个正常的用例,所以除了手动挖掘每个文件之外可能没有其他解决方案。另外,我很好奇人们多久犯这个错误。多年来我一直在使用 Visual Studio 和 TFS,以前没有这样做过,但我又不经常创建搁置集。签到和货架 UI 看起来非常相似。 不幸的是,我被困在一个古老的 TFS 服务器上,它本身不支持回滚 - 但是回滚不会生成一个实际上致力于实现回滚的新变更集吗?如果是这样,工具是否不允许您生成 that 变更集的回滚? 当它发生时,我有点恼火和倾斜。但是,是的,这可能会奏效!谢谢 另外(不相关的)Visual Studio 在(我认为)Visual Studio 2013 中引入了回滚。但是 TFS 通过命令行支持它已经有一段时间了。根据您的 TFS 的古老程度,它可能拥有它。 msdn.microsoft.com/en-us/library/dd380776%28v=vs.100%29.aspx 不幸的是,我仍然生活在 2008 年的世界中(对于服务器),因此必须使用电动工具版本。我知道它后来成为本地人,但我(不幸的是)只熟悉 2008 年的变体。这就是为什么我没有足够的信心将其发布为答案。 【参考方案1】:

正如 cmets 中所说,您可以“回滚回滚”。我一直都这样做。只需在历史记录中找到回滚变更集,并将其回滚,它会将您完成一半的变更带到本地工作区,这样您就可以继续处理它们并在完成后签入。

【讨论】:

非常有用..就像“回滚回滚”的概念。

以上是关于如何在 TFS 中恢复回滚的更改集?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 TFS 2010 中恢复(回滚)签入

如何撤消 TFS 2010 中的变更集回滚?

如何撤消 TFS 中的回滚?

如何在 TFS 中恢复覆盖搁置集?

将整个解决方案/项目回滚到 TFS 中的特定变更集?

如何使用 SQL Developer 管理带有回滚的单元测试