svn:ignore 的用法(忽略文件及目录)

在 svn 中忽略文件或目录, 可以通过 svn:ignore 命令来设置.
具体可分为以下几种情况:

若想创建一个文件夹, 并且把它加入版本控制 ,但忽略文件夹中的所有文件内容:

1
2
3
4
5
$ svn mkdir myDir
$ svn add myDir
$ svn commit -m "add myDir"
$ svn propset svn:ignore '*' myDir
$ svn commit -m "ignore contents in myDir"

若想创建一个文件夹, 但不加入版本控制, 即忽略这个文件夹:

1
2
3
$ mkdir myDir
$ svn propset svn:ignore 'myDir' . # 注意最后的`.`不能少
$ svn commit -m 'ignore myDir'

若已经创建了文件夹, 并且加入了版本控制, 现在想忽略这个文件夹, 但要保持文件夹的内容:

1
2
3
4
5
6
$ svn export myDir myDir-temp  # 将myDir导出为myDir-temp, 并且导出后myDir-temp不受版本控制
$ svn rm myDir
$ svn commit -m 'remove myDir'
$ mv myDir-temp myDir
$ svn propset svn:ignore 'myDir' . #注意最后的`.`不能少
$ svn commit -m 'ignore myDir'

若要忽略文件夹里的某几个文件:

1
2
3
4
$ svn mkdir myDir
$ svn add myDir
$ svn commit -m 'add myDir'
$ vi .svnignore # 创建/编辑.svnignore文件

将待忽略的文件名添加到 .svnignore 中, 一行一个. 例如:

1
2
3
4
.svnignore  
\*.a
\*.out
test.txt

最后:

1
2
$ svn propset svn:ignore -F .svnignore  # 参数 -F 表示从某文件中读取属性值
$ svn commit -m 'ignore some files'