我刚开始使用SVN,在源代码控制下有一个不需要的缓存目录。如何忽略SVN的整个目录/文件夹?
我在OS X和命令行上使用版本和TextMate。
我刚开始使用SVN,在源代码控制下有一个不需要的缓存目录。如何忽略SVN的整个目录/文件夹?
我在OS X和命令行上使用版本和TextMate。
当前回答
杰森的回答会管用的。然而,与其在缓存目录上将svn:ignore设置为“。”,不如在父目录的svn:ignore属性中包含“cache”,以防缓存目录不总是存在。我在一些“一次性”文件夹上这样做。
其他回答
在花了很多时间寻找如何做这个简单的活动后,我决定在帖子上找到一个像样的解释并不难。
首先让样本结构
$ SVN st ? 项目/箱子/目标 ? 项目/箱子/ myfile.x
1 -首先配置编辑器,在我的情况下vim 出口SVN_EDITOR = vim
2 -“svn propedit svn:ignore project/trunk/”将打开一个新文件,您可以在case类型“target”中添加您的文件和子目录保存并关闭文件和工作
$ SVN st ? 项目/箱子/ myfile.x
谢谢。
在父目录上设置svn:ignore属性:
$ cd parentdir
$ svn ps svn:ignore . 'cachedir'
这将覆盖svn:ignore的任何当前值。你可以编辑值:
$ svn pe svn:ignore .
这将打开您的编辑器。您可以添加多个模式,每行一个。
您可以通过以下命令查看当前值:
$ svn pg svn:ignore .
如果你使用的是GUI,应该有一个菜单选项来做这件事。
为了稍微扩展一下,如果您使用svn命令行工具执行此操作,您需要键入:
svn propedit svn:ignore path/to/dir
这将打开您选择的文本编辑器,然后键入'*'以忽略其中的所有内容,并保存+quit -这将包括svn中的目录本身,但忽略其中的所有文件,忽略目录,使用父目录的路径,然后在文件中键入目录的名称。保存后,运行更新('svn up'),然后检入相应的路径。
值得一提的是:
在命令行上不能使用
svn add *
这也将添加被忽略的文件,因为命令行展开*,因此svn add认为您希望添加所有文件。所以用这个代替:
svn add --force .
也要注意后面的斜杠。我发现在我的忽略设置文件中包含images/*不会忽略./images/。当我运行svn status -u时,它仍然显示?图像。我把忽略设置改成只有图像,没有斜杠。做了状态检查,清除了。