TFS 无法回滚:"The item being rolled back has changed in a later version"
TFS cannot rollback: "The item being rolled back has changed in a later version"
场景
我想回滚一个变更集。
问题
当我使用 VS2012 IDE 从我的 $/SAM/Main 分支执行 回滚整个变更集 时, 解决冲突 选项卡显示,我尝试回滚的所有文件 都有以下相关消息:
The item being rolled back has changed in a later version
Changes being rolled back: 54460~54460 Your workspace version is: 54460
You have a pending change on the item
此时,解决冲突选项卡中我唯一可用的选项是撤消回滚按钮。
注意事项
CS54460 是使用以下命令行创建的:
merge $/SAM/Dev $/SAM/Main /discard /recursive /version:C54426~C54426
CS54460,在查看 变更集详细信息 时,对所有 [合并、分支、删除]文件。
为什么我需要这样做
我需要这样做,因为我需要将 CS54426 从 $/SAM/Dev 分支合并到 $/SAM/Main分行.
不要使用回滚,只需手动执行:
- 获取要回滚到的版本
- 备份更改的文件
- 检查更改的文件。如果幸运的话,旧代码将被保留,但结帐可能会迫使您返回到最新版本。
- 因此,如有必要,请再次复制主源文件的备份
- 测试并签到
我的问题已通过使用以下命令解决:
merge $/SAM/Dev $/SAM/Main /recursive **/force** /version:C54426~C54426
这迫使我在 $/SAM/Dev 中需要的变更集忽略 $/SAM/Main 中的 "Keep Yours" 变更集,从而将我需要的代码合并到 $/SAM/Main分支.
我收到错误“TF203051:无法回滚项目 XYZ,因为项目的工作区版本等于或早于您尝试回滚到的版本。将您工作区中的版本更新为比您尝试回滚到的版本更新的版本,然后重试您的操作。”尝试回滚到 VS2017 历史记录中的特定版本时。
问题是文件 XYZ,其中一个文件包含在多个变更集中,第二个文件比我试图回滚的文件更新。
幸运的是,我也需要回滚它。因此解决方案是通过在 Source Control Explorer 的历史视图中同时选择这两个版本来同时回滚它们。
场景
我想回滚一个变更集。
问题
当我使用 VS2012 IDE 从我的 $/SAM/Main 分支执行 回滚整个变更集 时, 解决冲突 选项卡显示,我尝试回滚的所有文件 都有以下相关消息:
The item being rolled back has changed in a later version
Changes being rolled back: 54460~54460 Your workspace version is: 54460
You have a pending change on the item
此时,解决冲突选项卡中我唯一可用的选项是撤消回滚按钮。
注意事项
CS54460 是使用以下命令行创建的:
merge $/SAM/Dev $/SAM/Main /discard /recursive /version:C54426~C54426
CS54460,在查看 变更集详细信息 时,对所有 [合并、分支、删除]文件。
为什么我需要这样做
我需要这样做,因为我需要将 CS54426 从 $/SAM/Dev 分支合并到 $/SAM/Main分行.
不要使用回滚,只需手动执行:
- 获取要回滚到的版本
- 备份更改的文件
- 检查更改的文件。如果幸运的话,旧代码将被保留,但结帐可能会迫使您返回到最新版本。
- 因此,如有必要,请再次复制主源文件的备份
- 测试并签到
我的问题已通过使用以下命令解决:
merge $/SAM/Dev $/SAM/Main /recursive **/force** /version:C54426~C54426
这迫使我在 $/SAM/Dev 中需要的变更集忽略 $/SAM/Main 中的 "Keep Yours" 变更集,从而将我需要的代码合并到 $/SAM/Main分支.
我收到错误“TF203051:无法回滚项目 XYZ,因为项目的工作区版本等于或早于您尝试回滚到的版本。将您工作区中的版本更新为比您尝试回滚到的版本更新的版本,然后重试您的操作。”尝试回滚到 VS2017 历史记录中的特定版本时。 问题是文件 XYZ,其中一个文件包含在多个变更集中,第二个文件比我试图回滚的文件更新。 幸运的是,我也需要回滚它。因此解决方案是通过在 Source Control Explorer 的历史视图中同时选择这两个版本来同时回滚它们。