不幸的是,我无法准确解释发生了什么。结果如下:在我的存储库中,我有一个文件foo.bar
的正确版本是HEAD-1
。我如何创建一个新的修订版本,使得HEAD
和之间的唯一区别HEAD+1
是foo.bar
中的HEAD+1
是来自的HEAD-1
。存储库中的所有其他元素应与HEAD+1
中的元素相同HEAD
。
通过调用
svn update -rHEAD-1 foo.bar
我获得了一份我想要的工作副本HEAD+1
。但是,svn status
没有显示任何内容。
我希望我的问题有些意义...
答案1
据我了解,虽然 HEAD 修订版中的其他更改都没有问题,但您在 foo.bar 中犯了一个错误,并且您想在下一个修订版中恢复该错误。方法如下:
foo.bar
使用您指定的命令,从上一个修订版本中获取快照
svn update -r HEAD-1 foo.bar
然后复制此文件并将其另存为foo.correct.bar
cp foo.bar foo.correct.bar
将文件恢复到当前版本
svn update -r HEAD foo.bar
然后,复制你保存的(正确版本)foo.bar
来覆盖当前混乱的版本
mv foo.correct.bar foo.bar
将其作为修订版 HEAD+1 提交
svn commit foo.bar -m "Restoring foo.bar from older revision HEAD-1"
希望这能有所帮助,Sudipta