如何使用命令行SVN强制恢复特定版本号?

我在上一篇关于破坏事情的帖子中说得太早了。 我试图使用命令
svn update -r 1124
恢复到修订版1124,但我不断收到如下错误消息:
[prague]$ svn update -r1024
U    app/webroot/css/group_themes/green.css
U    app/webroot/css/style.css
Skipped 'app/webroot/index.php'
svn: Failed to add directory 'app/webroot/images/users': an unversioned directory of the same name already exists
我们得到了一些东西备份,但仍然不是我知道我昨晚检查过的确切版本...我认为恢复到特定版本会更容易:(     
已邀请:
没有提交 尝试在新的空目录中签出修订版1124,这样您就不会与现有目录发生冲突。 所以
svn checkout -r 1124
在一个新目录中。 随着提交 根据svn手册,如果要提交以前的修订版,则需要使用反向合并。请参阅http://svnbook.red-bean.com/en/1.0/ch04s04.html,“撤消更改”。
svn merge -c -1124 http://svn.example.com/repos/calc/trunk
其次是
svn commit -m "Rollback merge to revision 1124"
    
  无法添加目录'app / webroot / images / users':未版本控制的目录   同名的名字已经存在 听起来很清楚:已经有一个带有该名称的目录,而且它没有版本化。您可以选择两件事:删除目录并再次更新,或重命名(可能最聪明)并再次更新。
 $ mv app/webroot/images/users app/webroot/images/users.orig/
 $ svn update -r1024
顺便说一句,帮自己一个忙,看看SVN的一些替代品,比如Mercurial,Bazaar或Git。我发现转换非常愉快;)     
您只需使用即可更新修订版
svn up -r 1124 
但是这不会让您提交更改,因为SVN需要您在提交之前将工作副本更新为HEAD。你可以做的是
svn merge -r HEAD:1124 yourFile
svn ci yourFile -m "Reverting back to rev 1124 "
    

要回复问题请先登录注册