【问题标题】:How to reinstate rollbacked changes in TFS如何恢复 TFS 中的回滚更改
【发布时间】:2012-11-26 23:19:33
【问题描述】:

场景如下:

  • 我对代码库进行了更改,将其引入变更集 10。
  • 我回滚了变更集 10,使得变更集 11 是 10 的回滚。
  • 其他人所做的更改使代码库升级到更改集 20。

现在我有兴趣恢复我在变更集 10 中所做的更改。

问题:在 TFS 2012 中执行此操作的最佳方法是什么?

我尝试过的事情: 从变更集 10 创建一个分支,然后尝试将其合并回主分支。 TFS 表示没有要合并的更改。

附:假设变更集 10 中的变更以及变更集 20 之前的变更涉及数十到数百个文件,因此这里最好采用相对自动化的解决方案。

【问题讨论】:

    标签: tfs


    【解决方案1】:

    在团队项目的根目录中打开命令提示符

    tf 差异 /version:c9~C10 。 /recursive /format:unified

    然后检查您的整个项目(仅当您使用服务器工作区时才需要)

    使用第三方工具来应用统一差异,不幸的是内置工具似乎不支持应用差异。

    查看您的更改,如果需要,您可以运行以下命令来撤消对您尚未编辑的文件的签出

    tfpt uu /noget

    【讨论】:

      【解决方案2】:

      使用get specific version 获取版本 10。
      检查文件(确保您仍有 v10)。
      Get latest version 合并更改。
      入住。

      如果上述方法失败,那么您可能需要执行额外步骤以确保您拥有正确的版本:
      获取特定版本,v10
      备份文件
      退房
      恢复您的备份
      获取最新、合并、签入。

      另一个选项是获取变更集中文件的历史记录,并(逐个文件)在两个版本之间进行比较(只需选择历史记录中的任意两个版本,然后从上下文菜单中进行比较)。然后手动应用必要的更改以恢复 v10 行为。如果更改很小,这可能是一种更简单的方法。

      【讨论】:

        猜你喜欢
        • 2015-02-28
        • 2011-02-11
        • 2015-06-29
        • 2014-04-18
        • 2021-08-31
        • 2014-09-13
        • 2011-11-08
        • 2020-02-18
        • 1970-01-01
        相关资源
        最近更新 更多