我刚开始使用SVN,在源代码控制下有一个不需要的缓存目录。如何忽略SVN的整个目录/文件夹?

我在OS X和命令行上使用版本和TextMate。


当前回答

如果您正在使用特定的SVN客户端TortoiseSVN,那么在提交时,您可以选择右键单击项目并选择“添加到忽略列表”。

其他回答

由于我花了一些时间试图让它工作,因此应该注意,如果文件已经存在于SVN中,那么您需要在SVN中删除它们,然后编辑SVN:ignore属性。

我知道这是显而易见的,但他们总是以?在我的svn状态列表,当我认为它只是忽略他们在本地。

如果您使用的是像TortoiseSVN这样的SVN前端,或者某种IDE集成,那么在提交/添加操作的菜单中也应该有一个忽略选项。

设置父目录的svn:ignore属性:

svn propset svn:ignore dirname .

如果有多个内容要忽略,请在属性值中用换行符分隔。在这种情况下,使用外部编辑器编辑属性值更容易:

svn propedit svn:ignore .

在父目录上设置svn:ignore属性:

$ cd parentdir
$ svn ps svn:ignore . 'cachedir'

这将覆盖svn:ignore的任何当前值。你可以编辑值:

$ svn pe svn:ignore .

这将打开您的编辑器。您可以添加多个模式,每行一个。

您可以通过以下命令查看当前值:

$ svn pg svn:ignore .

如果你使用的是GUI,应该有一个菜单选项来做这件事。

值得一提的是:

在命令行上不能使用

svn add *

这也将添加被忽略的文件,因为命令行展开*,因此svn add认为您希望添加所有文件。所以用这个代替:

svn add --force .