admin 管理员组

文章数量: 1086019


2024年2月21日发(作者:免费广告发布平台app)

一、在linux下

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

find . -type d -name ".svn"|xargsrm -rf

或者

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

二、在windows下用以下法子:

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

xcopyproject_dir project_dir_1 /s /i

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

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

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

3、添加注册表(亲自动手测试过)

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

代码为:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINESOFTWAREClassesFoldershellDeleteSVN]

@="快速删除SVN版本信息"

[HKEY_LOCAL_MACHINESOFTWAREClassesFoldershellDeleteSVNcommand]

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

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

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

复制代码代码如下:

@echo off

echo ***********************************************************

echo 清除SVN版本信息

echo ***********************************************************

:start

::启动过程,切换目录

:set pwd=%cd%

:cd %1

echo 工作目录是:chr(38) 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" gotonoclean

if "%source%"=="N" gotonoclean

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(38) echo 删除目录%%c)

@echo off

echo "当前目录下的svn信息已清除"

goto end

:noclean

::分支过程,取消清理工作

echo "svn信息清楚操作已取消"

goto end

:end

::退出程序

cd "%pwd%"

pause

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


本文标签: 删除 文件 版本信息