如何在Diversion中仅回滚之前提交里的特定文件?
恢复特定.uasset文件到提交前版本(保留仓库历史)
如果你用Git
- 先通过
git log找到包含错误修改的提交哈希(比如abc123) - 把单个出错的.uasset文件恢复到该提交之前的版本:
这里git checkout abc123~1 -- 你的文件路径/xxx.uassetabc123~1指的是目标提交的上一个版本,也就是修改前的状态 - 把恢复后的文件提交成新记录,既保留之前的提交历史,又修正问题:
git add 你的文件路径/xxx.uasset git commit -m "恢复xxx.uasset到提交abc123前的版本"
如果你用Perforce(Unreal官方推荐的版本控制)
- 通过
p4 changes找到包含错误修改的变更列表编号(比如12345) - 同步该文件到变更列表之前的版本:
这里p4 sync 你的文件路径/xxx.uasset@12344@12344是目标变更列表的前一个编号,对应修改前的版本 - 将恢复后的文件提交为新的变更列表:
p4 edit 你的文件路径/xxx.uasset p4 submit -d "恢复xxx.uasset到变更列表12345前的版本"
以上操作都不会删除原有提交记录,只是新增一个修正提交,完全满足只修正特定文件、保留仓库历史的需求。
内容的提问来源于stack exchange,提问作者HakoneMatate
相关产品推荐
相关产品推荐

