svn很好用,但是如果要删除svn文件夹的绑定是个很麻烦的事情,每个目录下都有.svn的文件夹,必须全部删掉才行。手动删除费时费力,一般都写段脚本搞定,不过网上搜索出来的python脚本都太冗长了,一点也体现不出python的优势。如下,网上搜索到得代码:
代码<!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />--> 1 #coding=utf-8
2 import os
3 import shutil
4 import sys
5 import stat
6
7 def deleteSubFile(svnpath):
8 names = os.listdir(svnpath)
9 for name in names:
10
11 fp = os.path.join( svnpath, name)
12 if (os.path.isfile(fp)):
13 os.chmod( fp, stat.S_IWRITE)
14 os.remove(fp)
15 else:
16 deleteSubFile(fp)
17
18
19 def deleteSVN(parentPath = None, dir = None):
20 if (dir != None and dir == '.svn'):
21 deleteSubFile(os.path.join( parentPath, dir))
22 shutil.rmtree(os.path.join( parentPath, dir), True, False)
23 print 'deleted ', os.path.join( parentPath, dir)
24 else:
25 if (dir != None):
26 filePath = os.path.join( parentPath, dir)
27 else:
28 filePath = parentPath
29 names = os.listdir(filePath)
30 for name in names:
31 fp = os.path.join( filePath, name)
32 if (os.path.isdir(fp)):
33 deleteSVN(filePath, name)
34
35
36 if len(sys.argv) < 2:
37 print 'Usage: python % <file path>' % os.path.basename(sys.argv[0])
38 sys.exit(-1)
39
40 if os.path.isfile(sys.argv[1]):
41 print '请选择文件夹, 而不是文件'
42 else:
43 deleteSVN(parentPath = sys.argv[1])
其中实现功能的核心代码写得太过冗长,其实很简单的4行代码就能达到目的,如下:
1 import os
2 for (p,d,f) in os.walk("要删除的目录路径"):
3 if p.find('.svn')>0:
4 os.popen('rd /s /q %s'%p)
分享到:
相关推荐
此段代码作用是删除svn工具下的.svn文件夹
批量删除.svn文件夹、.svn文件使用svn进行版本控制,每个文件夹下都有.svn文件夹,有些项目在脱离svn版本控制之后,想删除项目中所有的.svn文件夹,可用下面的方法进行快速删除: 1、打开要删除.svn文件的最外层...
用过SVN的同志都知道,如果要删除那些SVN的文件夹,操作起来十分不方便,有了这个工具,操作就十分方便了。
批量删除svn文件夹 批量删除svn文件夹 批量删除svn文件夹 批量删除svn文件夹 批量删除svn文件夹
deleteSVN注册右击菜单中删除SVN文件夹
清楚svn目录下生成的.svn所有文件夹
删除.svn文件夹 用过都说好! 我找了很久呢!
批量删除从SVN服务器check out的文件夹里面的.svn文件夹,方便SVN地址切换。运行后鼠标右键点击要删除的文件夹会出现删除的选项。
压缩文件中有个注册表文件,双击执行可添加右键快速执行。找到需要清理并带有svn文件夹的目录,然后右键点击Delete Svn Folders便可快速清理此目录中的全部svn文件夹。
清除svn文件夹,小工具
删除 .svn文件和文件夹 删除 .svn文件和文件夹
双击这个reg文件,成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击之后,就可以删除这个文件下所有的.svn文件了
该插件用于删除svn文件,用于右键菜单中svn目录删除,同级目录下的.svn文件夹,文件过于多的时候可以使用进行批量删除.
删除SVN文件夹工具,可删除指定文件中的所有.svn文件夹,包含子文件夹中的。非常好使。
Windows下删除.svn文件夹的最简易方法
python 实现svn的代码下载,解决了请求认证,字符编码,地址长度问题。非常不错的例子。
删除从SVN上荡下来的文件里所有.svn的文件夹,本代码简单,可用记事本编辑,直接考入到装有SVN文件的文件夹下就可以。也可以用来删除其它类似文件。代码即使不会的人也能看懂。需要改什么用记事本打开改就行了。
删除文件夹以及子文件夹 svn信息 .svn文件夹会被删除 小工具 却很实用
批量删除svn文件夹及文件,解除去除svn控制工具体批量删除svn文件夹及文件,解除去除svn控制工具体
右键删除目录下隐藏.svn文件夹 用于windows下