首页 > 解决方案 > svn - 如何忽略目录

问题描述

我有一个版本化的子目录,里面有多种文件和目录,*.c、*.h、*.a、*.so ...等。此外,每次项目完成后,这些东西都会被部分修改构建,并且非常大,以至于当我从父目录提交时,这个子目录会大大减慢进度。

svn 速度慢的原因很明显,因为 svn 需要解析到这个子目录并在提交对话框中列出所有这些子目录。

我需要某种方式让 svn 忽略这个子目录,以便加快提交进度,并且这种方式仅限于本地部分,而不是服务器部分(虽然我从来没有提交过,将来也可能不会提交,其他做。)

这是我所做但失败的事情:

编辑: svn 版本是 1.6.17

标签: svnversion-controltortoisesvn

解决方案


通常不鼓励将生成的二进制文件存储在版本控制中,即使做得正确也是如此。我的建议是从存储库中完全删除每个生成的文件夹输出,然后将其添加到父文件夹的svn:ignore属性中,使其成为完全本地目录。然后,找到一种完全不同的机制来分发二进制版本;如果需要在子版本中完成,它会建议在存储库中使用新的层次结构,例如/branches/releases.

如果禁止或不鼓励修复损坏的程序(根据我的经验,“我们一直以这种方式做事”是许多组织的法律),您可以尝试进行不包含这些文件夹的稀疏结帐或(如果不包含这些文件夹) t 工作)配置您的本地构建以在其他地方生成其输出;最多,这意味着处理更改列表中的单个文件ignore-on-commit


推荐阅读