恢复SVN中的提交?

时间:2012-06-20 16:33:36

标签: svn version-control

如何恢复具有以下情况的提交?

Revision 3, Commit Message
Revision 2, Commit Message
Revision 1, Commit Message

修订版2是一个错误的提交,我想删除它。怎么样?

2 个答案:

答案 0 :(得分:5)

您可以通过SVN中的反向合并来撤消提交:

假设您有一个从主干检出的工作副本:

svn merge -c -2 URL/trunk

这将撤消您在修订版2中所做的更改,并为您提供需要提交更改的工作副本。

这不会改变历史记录,因为SVN无法更改已经签入的修订版的历史记录。只有通过存储库服务器上的转储/加载循环,才有可能完全删除我不推荐的修订版。

答案 1 :(得分:2)

结帐时:

  svn merge -r2:1 path/to/checkout
  svn ci -m'Undo changes in rev 2 ' path/to/checkout

如果你想完全退出回购,你需要转储,过滤和放弃将它加载到repo-server上的新文件中。