svn使用技巧:使用命令行添加忽略文件和目录

之前一直在团队中推荐自己在TortoiseSVNSetting->General->Global ignore pattern中定义排除规则。比如,我一直用的是*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__ *.rej *~ #*# .#* .*.swp .DS_Store [Tt]humbs.db。但有些人就不喜欢用,而且随着项目类型的转换,比如新的android团队需要定义不同的规则,这时就得重新在群里发新的规则比较麻烦。

想到git项目中有.gitignore文件,就想svn中是否有一样的文件,寻找了一圈发现应该是没有类型的文件可以用,仅仅是在项目的svn Propertys设置对话框中在Edit时可以Load一个文件,这个文件的规则和.gitignore类似。

顺便看到更改项目的svn:global-ignores和svn:ignore的命令行,就直接写了个批处理,外加三个规则文件,在批处理里分别导入三个规则文件到svn属性里,然后在工程根目录执行后提交svn即可,然后同事们再add时就不容易带入垃圾文件了。

批处理如下:

@echo off
rem 此批处理的用途

rem 参考链接:http://stackoverflow.com/questions/17298668/svn-ignore-like-gitignore
rem 参考命令行
rem svn propset svn:ignore -RF /root/svn-ignore.txt . [dot for current dir]
rem 各语言通用

set txt_path=%~dp0%
svn propset svn:global-ignores -F "%txt_path%svn_ignored_common.txt" %cd%

rem java开发
svn propset svn:global-ignores -F "%txt_path%\svn_ignored_java.txt" %cd%

rem android studio
svn propset svn:ignore -F "%txt_path%\svn_ignored_android_studio.txt" %cd%
pause

具体的几个规则文件由于可能会经常变更,并且不同项目有不同的需求,在这里就只放个链接了,https://github.com/k1988/win_mini_tool/tree/master/bats

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容