我刚开始使用SVN,在源代码控制下有一个不需要的缓存目录。如何忽略SVN的整个目录/文件夹?
我在OS X和命令行上使用版本和TextMate。
我刚开始使用SVN,在源代码控制下有一个不需要的缓存目录。如何忽略SVN的整个目录/文件夹?
我在OS X和命令行上使用版本和TextMate。
当前回答
由于我花了一些时间试图让它工作,因此应该注意,如果文件已经存在于SVN中,那么您需要在SVN中删除它们,然后编辑SVN:ignore属性。
我知道这是显而易见的,但他们总是以?在我的svn状态列表,当我认为它只是忽略他们在本地。
其他回答
如果项目目录名为/ project,缓存目录名为/ project / cache,则需要在/ project上设置subversion属性。属性名为“svn:ignore”,属性值为“Cache”。
有关属性的更多信息,请参阅Subversion手册中的此页。
如果您使用的是像TortoiseSVN这样的SVN前端,或者某种IDE集成,那么在提交/添加操作的菜单中也应该有一个忽略选项。
如果您正在使用特定的SVN客户端TortoiseSVN,那么在提交时,您可以选择右键单击项目并选择“添加到忽略列表”。
值得一提的是:
在命令行上不能使用
svn add *
这也将添加被忽略的文件,因为命令行展开*,因此svn add认为您希望添加所有文件。所以用这个代替:
svn add --force .
下面是一个目录结构示例:
\project
\source
\cache
\other
当在项目中,您看到您的缓存目录没有添加,并显示为这样。
> svn status
M source
? cache
若要设置ignore属性,请执行
SVN propset SVN:ignore cache。
其中svn:ignore是您正在设置的属性的名称,cache是属性的值,以及。是要设置此属性的目录。它应该是需要该属性的缓存目录的父目录。
检查设置了哪些属性:
> svn proplist
Properties on '.':
svn:ignore
查看svn的值:ignore:
> svn propget svn:ignore
cache
删除先前设置的属性。
svn propdel svn:ignore