SVN提交前撤销删除
如果您从SVN工作副本中删除一个目录,但还没有提交,那么如何恢复该目录并不明显。 当你input“svn undo d”时,Google甚至会build议“提交之前的svn撤消删除”作为常见查询,但search结果是无用的。
编辑:我想要一个在颠覆1.4.4工作的解决scheme
svn revert deletedDirectory
这里是 svn revert
命令的文档 。
编辑
如果使用rmdir
而不是svn rm
删除deletedDirectory
则需要执行此操作
svn update deletedDirectory
代替。
1)做
svn revert . --recursive
2)parsing错误输出
"Failed to revert 'dir1/dir2' -- try updating instead."
3)为每个错误目录调用svn:
svn up dir1/dir2
对我有效的是
svn revert --depth infinity deletedDir
从删除的目录之上的级别执行(recursion)恢复操作。
为了使它成为一个class轮,你可以尝试像这样:
svn status | cut -d ' ' -f 8 | xargs svn revert
我能find的最简单的解决scheme是从工作副本(使用rm -rf,而不是svn delete)删除父目录,然后在祖父母中运行svn update。 例如,如果你删除了/ b / c,rm -rf a / b,cd a,svn up。 这把一切都带回来了。 当然,如果在父目录中没有其他未提交的更改,这只是一个很好的解决scheme。
希望这个页面将在下一次我谷歌这个问题的结果的顶部。 当然,如果有人提出更清洁的方法,情况会更好。
您可以在提交之前删除该文件夹并更新父目录:
rm -r some_dir
svn update some_dir_parent