转自:http://www.cnblogs.com/lr-ting/archive/2012/09/03/2666271.html

  

一、在linux下 

 删除这些目录是很简单的,命令如下

find . -type d -name ".svn"|xargs rm -rf;

或者

find . -type d -iname ".svn" -exec rm -rf {} \; 

二、在windows下用以下法子:

1、在项目平级的目录,执行dos命令:

xcopy project_dir project_dir_1 /s /i 

2、或者在项目根目录执行以下dos命令

for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn" 

  其实第二种方法可以用来干很多事的,比如把代码中的.svn替换为任意其他文件名并在硬盘根目录下执行,就可以从硬盘上删除所有的这个文件啦。

3、添加注册表

  可以将“快速删除SVN版本信息”命名增加到资源管理器的右键上,这样,鼠标点两下就能把选中目录下的所有.svn目录干掉了。 
代码为:

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
@="快速删除SVN版本信息"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
@="cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat"

  将这段代码保存为一个.reg文件,双击确认导入注册表中不完整,后来自己手工添加。注意:文件“批处理文件删除SVN版本信息.bat”不能放 在有空格的文件夹下,确认删除时请看一下当前目录不要删除不该删的目录下的SVN版本信息。不知道怎么改进“cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat”。

批处理文件删除SVN版本信息.bat文件内容如下:

复制代码代码如下:
@echo off
echo ***********************************************************
echo 清除SVN版本信 息
echo ***********************************************************
:start
::启动过程,切换目录
:set pwd=%cd%
:cd %
echo 工作目录是:chr() chdir
:input
::获取输入,根据输入进行处理
set source=:
set /p source=确定要清楚当前目录下的.svn信息吗?[Y/N/Q]
set "source=%source:"=%"
if "%source%"=="y" goto clean
if "%source%"=="Y" goto clean
if "%source%"=="n" goto noclean
if "%source%"=="N" goto noclean
if "%source%"=="q" goto end
if "%source%"=="Q" goto end
goto input
:clean
::主处理过程,执行清理工作
@echo on
@for /d /r %%c in (.svn) do @if exist %%c ( rd /s /q %%c chr() echo 删除目录%%c)
@echo off
echo "当前目录下的svn信息已清除"
goto end
:noclean
::分支过程,取消清理工作
echo "svn信息清楚操作已取消"
goto end
:end
::退出程序
cd "%pwd%"
pause

注:最后一种方法,如果出现错误,就打开注册表,找到对应的项,吧“cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat “直接写入注册表中即可使用

最后一种方法: 

报文件没有关联错误,找到这个注册表项:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]

写入(注意路径 ):

"cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat "

还有一个要注意的:在使用的时候,不要在要清除的文件夹上右击,在要清除的文件夹里面的子文件夹上右击--》快速删除svn版本信息

今天看了Jon Galloway的一个注册表脚本,十分方便,分享如下:

建立一个文本文件,取名为kill-svn-folders.reg(扩展名由txt改为reg),内容如下:

复制代码代码如下:
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 chr(38)chr(38) COLOR 9A chr(38)chr(38) FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""

保存之后,双击这个reg文件。

成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击之后,既可以删除这个文件下下面所有的.svn文件了!!

最新文章

  1. TypeScript为Zepto编写LazyLoad插件
  2. 使用XAMPP创建本地浏览器经验
  3. Win10 锁屏图片 路径
  4. Jquery ajax调用webservice总结
  5. 四种方案解决ScrollView嵌套ListView问题(转)
  6. Hadoop+Spark:集群环境搭建
  7. JAVA TcpServer端使用Scanner读取不到数据的解决办法
  8. ubuntu cpus 共享打印
  9. MySQL数据库恢复的经历。
  10. Spring事务Transaction配置的五种注入方式详解
  11. Delphi接口
  12. codeforces 883M. Quadcopter Competition 思路
  13. jquery toggle 方法被废除的替代方法
  14. 使用git-flow来帮助管理git代码
  15. cf 1142 C
  16. 在SoapUI中模拟用户操作
  17. InnoDB体系架构
  18. 大数据与Hadoop
  19. kubespray -- 快速部署高可用k8s集群 + 扩容节点 scale.yaml
  20. 如何调用另一个python文件中的代码

热门文章

  1. Python orm基础
  2. 网络编程 - socket实现多个连接处理
  3. jquery的delegate()方法
  4. Android table布局开发的一个简单的计算器
  5. 散列(hash)
  6. ROW_NUM
  7. 如何卸载 win10 自带的“电影和电视”软件
  8. Spring 源码学习(一)
  9. 模拟select控件功能
  10. Minimum Transport Cost Floyd 输出最短路