SVN在提交前撤消删除

LaC*_*LaC 132 svn directory undo delete-directory

如果从SVN工作副本中删除目录但尚未提交,则不清楚如何将其恢复.当您输入"svn undo d"时,Google甚至建议"在提交前将svn undo delete"作为常见查询,但搜索结果无益.

编辑:我想要一个适用于subversion 1.4.4的解决方案

Den*_*kov 155

1)做

svn revert . --recursive
Run Code Online (Sandbox Code Playgroud)

2)解析输出错误之类的

"Failed to revert 'dir1/dir2' -- try updating instead."
Run Code Online (Sandbox Code Playgroud)

3)为每个错误目录调用svn:

svn up dir1/dir2
Run Code Online (Sandbox Code Playgroud)

  • 这是最准确的答案,非常感谢,你帮助了我很多. (12认同)
  • `--recursive`的+1,有助于恢复已删除目录的内容. (5认同)

Mic*_*ner 143

svn revert deletedDirectory

这里的文档svn revert命令.


编辑

如果deletedDirectory删除使用rmdir和不使用svn rm,您需要这样做

svn update deletedDirectory

代替.

  • 根据链接,使用svn -R revert取消删除包含所有内容的整个目录,这可能是你想要的.没有-R的svn还原只是恢复目录,而不是内容. (5认同)
  • 这就是1.4.4所说的,顺便说一下:$ svn help revert revert:恢复原始工作副本文件(撤消大多数本地编辑).用法:恢复PATH ...注意:此子命令不需要网络访问,并解决任何冲突状态.但是,它不会还原已删除的目录. (4认同)
  • 这必须是新的,它在SVN 1.4.4中不起作用.(这是我尝试过的第一件事.) (3认同)

Jas*_*son 31

对我有用的是

svn revert --depth infinity deletedDir
Run Code Online (Sandbox Code Playgroud)


Gre*_*ill 5

从您删除的目录上方的级别执行(递归)还原操作.