概述
工作中要把一个项目迁移到另外的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_MACHINESOFTWAREClassesFoldershellDeleteSVN]
@="Delete SVN Folders"
[HKEY_LOCAL_MACHINESOFTWAREClassesFoldershellDeleteSVNcommand]
@="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文件夹
三、编写js程序
程序如下:
js code
if (WScript.Arguments.length == 0) {
WScript.Echo("请输入参数!");
WScript.quit();
}
else {
var path = WScript.Arguments(0);
var fso = new ActiveXObject("Scripting.FileSystemObject");
var rootFolder = fso.getFolder(path);
var folderList = new Array();
folderList.push(rootFolder);
var folder, fc;
while (folderList.length > 0) {
folder = folderList.pop();
fc = new Enumerator(folder.SubFolders);
while (!fc.atEnd()) {
if (fc.item().name == ".svn") {
fso.deleteFolder(fc.item().path, true);
}
else {
folderList.push(fc.item());
}
fc.moveNext();
}
}
WScript.Echo("完成!");
}
将这个程序保存为后缀为.js的文件,如delsvn.js
运行cscript.exe delsvn.js XXX例如:cscript.exe C:UserslhcDesktopdelsvn.js E:Union
其中C:UserslhcDesktopdelsvn.js是此js放在桌面上
E:Union下面的.svn文件夹都会删除
编写此js时注意:
1、 我们输出内容用的是WScript.Echo(),而不用alert()
如果使用alert(),会报缺少对象的错误,因为alert()是属于浏览器(DOM)的函数,JavaScript中没有这个函数
2、 可执行js文件
有如下代码:
<job>
<script language="javascript">
WScript.Echo("Hello World!");
</script>
</job>
把这个代码保存为后缀为.wsf的文件jstest.wsf,双击可运行,如下图:
如果把WScript.Echo("Hello World!");这行代码换成上面的删除.svn文件夹的程序,也可以运行,不过由于这个程序需要输入参数,可以以以下方式运行:
cscript C:UserslhcDesktopjstest.wsf E:Union
个人认为第二种最方便,一劳永逸。
摘自:http://www.cnblogs.com/fuhongxue2011/archive/2011/03/31/2001393.html
最后
以上就是朴素毛豆为你收集整理的删除所有的.svn文件夹的全部内容,希望文章能够帮你解决删除所有的.svn文件夹所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复