递归删除SVN工作目录下的.svn目录

来源:互联网 发布:mac os 10.12 编辑:程序博客网 时间:2024/04/30 06:38

http://yushine.javaeye.com/blog/753536

 

文章分类:PHP编程

要删除SVN工作目录下的.svn目录,而SVN Clinet 本身是不带清除.svn文件的命令的。所以只能自己写脚本来递归删除.svn文件夹: 

1、windows 平台下 
常用的作法是用系统(Windows)自带的搜索功能,搜索出所有.svn目录(需要在“其他高级选项”中选中“搜索隐藏的文件和文件夹”),然后全选删除。这当然不是高效的作法,谁能忍受一遍又一遍重复这种纯体力的劳动? 

Jon Galloway提供了一段注册表代码,可以将”Delete SVN Folders”命名增加到资源管理器的右键上,这样,鼠标点两下就能把选中目录下的所有.svn目录干掉了。Works just great! 

代码为: 

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE/SOFTWARE/Classes/Folder/shell/DeleteSVN] 
@=”Delete SVN Folders” 

[HKEY_LOCAL_MACHINE/SOFTWARE/Classes/Folder/shell/DeleteSVN/command] 
@=”cmd.exe /c /”TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r /”%1/” %%f IN (.svn) DO RD /s /q /”%%f/” /”" 

将这段代码保存为一个.reg文件,双击确认导入注册表即可。 

2、Linux平台下: 

find . -type d -name “.svn”|xargs rm -rf