我在上一篇关于破坏事情的文章中说得太早了。
我正在尝试使用命令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
我们备份了一些东西,但仍然不是我知道我昨晚检查过的确切版本...我认为恢复到特定版本会更容易:(
答案 0 :(得分:13)
不提交
尝试在新的空目录中签出修订版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"
答案 1 :(得分:3)
无法添加目录'app / webroot / images / users':未版本控制的目录 已存在同名
对我来说很清楚:已经存在一个具有该名称的目录,并且它没有版本化。您可以选择两件事:删除目录并重新更新,或重命名(可能最聪明)并再次更新。
$ mv app/webroot/images/users app/webroot/images/users.orig/
$ svn update -r1024
顺便说一句,帮自己一个忙,看一下SVN的一些替代品,比如Mercurial,Bazaar或Git。我发现转换非常愉快;)
答案 2 :(得分:0)
您只需使用
更新修订版即可svn up -r 1124
但是这将不允许您提交更改,因为SVN需要您在提交之前将工作副本更新为HEAD。你可以做的是
svn merge -r HEAD:1124 yourFile
svn ci yourFile -m "Reverting back to rev 1124 "