2013-10-05 80 views
1

我有一种情况,我似乎无法解决问题。SVN svn:忽略目录中包含版本化文件时不工作

对于我不能控制的各种问题和兼容性问题,我不得不在我的ASP.NET软件包目录中添加几个文件。我知道Horrid,但目前没有其他解决方法。

在我的SVN根目前,我有一个设置规则忽略的:

svn:ignore packages 

然而packages目录中的全部内容在SVN仍显示添加对话框。

我也试过:

packages . 
*.packages 
*.packages . 
*.packages* 
*packages* 

我已经试过配置都没有奏效。我现在怀疑SVN忽略了忽略属性,因为在packages目录中有一个版本控制的子对象。

这是预期的行为,有没有办法忽略非版本的东西?

回答

3

因为在源代码控制中你有一些包目录的子目录,那么根据定义,也有包目录本身已经在源代码管理中。 svn:ignore工作只有在svn add操作,即在源控制下添加项目而不是的过程中。因此,svn:ignore可以对已经版本化的软件包目录没有影响。

所以svn:ignore的限制(如果你想这样称呼的话)是什么导致你的问题。具有讽刺意味的是,您的解决方案是将相同的限制转化为一种优势,即:在软件包目录本身(不是您一直试图执行的父目录)上添加一个svn:ignore属性,其值仅为星号(*) 。那么这将忽略包的任何孩子,除了对于那些已经在那里进行了版本化的孩子。