我刚开始使用SVN,在源代码控制下有一个不需要的缓存目录。如何忽略SVN的整个目录/文件夹?
我在OS X和命令行上使用版本和TextMate。
我刚开始使用SVN,在源代码控制下有一个不需要的缓存目录。如何忽略SVN的整个目录/文件夹?
我在OS X和命令行上使用版本和TextMate。
当前回答
由于我花了一些时间试图让它工作,因此应该注意,如果文件已经存在于SVN中,那么您需要在SVN中删除它们,然后编辑SVN:ignore属性。
我知道这是显而易见的,但他们总是以?在我的svn状态列表,当我认为它只是忽略他们在本地。
其他回答
为了稍微扩展一下,如果您使用svn命令行工具执行此操作,您需要键入:
svn propedit svn:ignore path/to/dir
这将打开您选择的文本编辑器,然后键入'*'以忽略其中的所有内容,并保存+quit -这将包括svn中的目录本身,但忽略其中的所有文件,忽略目录,使用父目录的路径,然后在文件中键入目录的名称。保存后,运行更新('svn up'),然后检入相应的路径。
...如果您想忽略多个目录(比如build/ temp/和*.tmp文件),您可以分两步完成(忽略第一步并编辑忽略属性(参见这里的其他答案),或者可以编写如下内容
svn propset svn:ignore "build
temp
*.tmp" .
在命令行中。
设置svn:ignore属性。大多数UI svn工具都有办法做到这一点,以及链接中的命令行讨论。
如果项目目录名为/ project,缓存目录名为/ project / cache,则需要在/ project上设置subversion属性。属性名为“svn:ignore”,属性值为“Cache”。
有关属性的更多信息,请参阅Subversion手册中的此页。
下面是一个目录结构示例:
\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