为什么'svn忽略'不理睬?

Min*_*gus 11 svn ignore

我正在尝试将一个Linux内核添加到一个SVN树,它有一个.git子目录 - 我不想添加它.

任何人都可以解释这种行为 - 为什么它不会忽略.git目录?

test2$ mkdir -p a/.git/blah
test2$ ls
a
test2$ svn propset svn:ignore .git .
property 'svn:ignore' set on '.'
test2$ svn propset -R svn:ignore .git .
property 'svn:ignore' set (recursively) on '.'
test2$ svn add a
A         a
A         a/.git
A         a/.git/blah
Run Code Online (Sandbox Code Playgroud)

Gre*_*ill 17

svn:ignore目录上的属性列出了当前目录中将被忽略的名称.您已将svn:ignore当前目录的属性设置为.git,但这不适用于子目录a.你可以做的是首先a非递归添加:

svn add -N a
svn ci -m "add a directory"
Run Code Online (Sandbox Code Playgroud)

然后设置svn:ignore属性:

svn propset svn:ignore .git a
Run Code Online (Sandbox Code Playgroud)

然后添加你的树:

svn add a
Run Code Online (Sandbox Code Playgroud)

这应该忽略该a/.git目录.


小智 7

第一个svn propset设置目录的svn:ignore属性.a

第二个svn propset什么都没做,因为a还没有SVN管理.


Pet*_*ker 5

svn:ignore属性用于忽略已添加目录中的文件.

为了避免导入文件(或目录),您应该使用global-ignores -feature,它可以在[miscellany]部分的文件~/.svn/config(UNIX)或%APPDATA%\Subversion\config(Windows)中配置.

通过删除#前面的行来激活它:

global-ignores = .git
Run Code Online (Sandbox Code Playgroud)