我有一个包含许多子目录的目录。在每个文件夹中都有一个Subversion文件夹(.svn)。
Windows中是否有一条命令会通过每个文件夹和子目录并删除.svn文件夹?
还是我必须创建一个脚本或手动执行?
我有一个包含许多子目录的目录。在每个文件夹中都有一个Subversion文件夹(.svn)。
Windows中是否有一条命令会通过每个文件夹和子目录并删除.svn文件夹?
还是我必须创建一个脚本或手动执行?
Answers:
使用svn export
命令将Subversion工作副本导出到没有目录的新“干净”目录结构中.svn
。
svn export
svn export WCPath NewPath
用以下行制作一个litt批处理文件,并从存在.svn目录的父文件夹中执行该文件。
FOR /F "tokens=*" %%G IN ('DIR /B /AD /S *.svn*') DO RMDIR /S /Q "%%G"
您也可以直接从命令提示符处发出以下行:
FOR /F "tokens=*" %G IN ('DIR /B /AD /S *.svn*') DO RMDIR /S /Q "%G"
在PowerShell中执行此操作。
注意:这是递归的,因此请确保您在正确的目录中!
gci -fil '.svn' -r -force | ri -r -force
这是我的源代码树清理脚本的其余部分。
gci -fil 'bin' -r -force | ri -r -force
gci -fil 'obj' -r -force | ri -r -force
gci -fil '_ReSharper*' -r -force | ri -r -force
gci -fil '*.suo' -r -force | ri -r -force
gci -fil '*.user' -r -force | ri -r -force
如果要删除Windows中所有名为.svn的子文件夹,请使用以下内容创建批处理文件:
for /f "tokens=* delims=" %%i in ('dir /s /b /a:d *.svn') do (
rd /s /q "%%i"
)
将其保存在文件del_All_Dot_SVN_Folders.cmd中。运行。你完成了。
感谢http://www.axelscript.com/2008/03/11/delete-all-svn-files-in-windows/
请记住,上面的代码具有.svn,而链接中的代码只有* svn,因此最好不要使.svn意外产生不良影响。