3

这是场景:

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

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

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

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

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

4

2 回答 2

0

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

如果上述方法失败,那么您可能需要执行额外步骤以确保您拥有正确的版本:
获取特定版本,v10
备份文件签

恢复您的备份
获取最新,合并,签入。

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

于 2012-12-09T18:22:05.297 回答
0

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

tf 差异 /version:c9~C10 。/递归 /格式:统一

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

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

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

tfpt uu /noget

于 2012-12-09T18:09:38.163 回答