发新话题
打印

删除所有的.svn文件夹

删除所有的.svn文件夹

工作中要把一个项目迁移到另外的svn目录中,遇到一个问题,需要先把原来的.svn删除,然后再增加到新的svn中,开始手动删除,但是发现太耗时耗力了,网上搜了几种删除的方法,自己都试了一遍,成功删除,写出来备忘。
一、在Dos窗口中运行如下命令
for /r <你项目的路径> %i in (.svn) do rd /s /q %i


二、将“Delete SVN Folders”操作添加到右击菜单中
      建立一个文本文件,名称随意,后缀为.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 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""


保存之后,双击这个reg文件。成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击这个选项,即可删除这个文件夹下面所有的.svn文件夹。

第二种方式我没有测试过。

TOP

第二种已测试,通过!

TOP

方法一:

1、Windows环境

将下面的代码保存为 kill-svn.bat文件,放到要删除.svn文件的目录下,双击运行即可

@echo on

@rem 删除SVN版本控制目录

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

@echo completed
@pause

很好用

2、在linux下

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

方法二:
建立一个文本文件,取名为kill-svn.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 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""

保存之后,双击这个reg文件。成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击之后,既可以删除这个文件下(包括子文件夹)所有的.svn文件夹。

删除完成后,为了避免误操作,不小心把正处于版本管理中的.svn文件夹删除,最好把刚才的注册信息删除。删除方法是,打开注册表(在运行中用regedit命令),找到[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] ,把DeleteSVN这个项删除,即可。

TOP

发新话题