svn - svn - 如何忽略目录
问题描述
我有一个版本化的子目录,里面有多种文件和目录,*.c、*.h、*.a、*.so ...等。此外,每次项目完成后,这些东西都会被部分修改构建,并且非常大,以至于当我从父目录提交时,这个子目录会大大减慢进度。
svn 速度慢的原因很明显,因为 svn 需要解析到这个子目录并在提交对话框中列出所有这些子目录。
我需要某种方式让 svn 忽略这个子目录,以便加快提交进度,并且这种方式仅限于本地部分,而不是服务器部分(虽然我从来没有提交过,将来也可能不会提交,其他做。)
这是我所做但失败的事情:
在提交对话框中:右键单击 -> 移动到更改列表 -> 提交时忽略。
此方法提供分组功能,让用户更快地识别内容,但无助于忽略文件/目录。
右键单击子目录 -> TortoiseSVN -> 删除并添加到忽略列表。
此方法将删除子目录,这不是我想要的。
运行时配置区域 - 全局忽略选项。
全局忽略扩展名,子目录也包含 *.c 文件。如果我将 *.c 添加到 global-ignores 列表中,我将无法在其他目录中提交 *.c 文件!
编辑: svn 版本是 1.6.17
解决方案
通常不鼓励将生成的二进制文件存储在版本控制中,即使做得正确也是如此。我的建议是从存储库中完全删除每个生成的文件夹输出,然后将其添加到父文件夹的svn:ignore
属性中,使其成为完全本地目录。然后,找到一种完全不同的机制来分发二进制版本;如果需要在子版本中完成,它会建议在存储库中使用新的层次结构,例如/branches/releases
.
如果禁止或不鼓励修复损坏的程序(根据我的经验,“我们一直以这种方式做事”是许多组织的法律),您可以尝试进行不包含这些文件夹的稀疏结帐或(如果不包含这些文件夹) t 工作)配置您的本地构建以在其他地方生成其输出;最多,这意味着处理更改列表中的单个文件ignore-on-commit
。
推荐阅读
- c - 外部类变量声明后的内存分配
- javascript - 如何添加onclick事件来启动计时器
- fstar - 使用归一化器减少递归函数
- objective-c - 如何使用 Firebase 推送通知服务而不在自定义创建的框架 Xcode 中添加 GoogleService-Info.plist 文件
- javascript - 检测字符串数组中的异常值 - VanillaJS & parseInt
- autohotkey - Autohotkey - 尝试发送数组的特定位置
- java - 如何添加“n”个奇数?
- c# - 如何在 Azure Function 的自定义 HTTP 路由中指定查询参数?
- javascript - 我想关闭图像,我的关闭按钮不起作用,我不希望整个页面只关闭图像
- mysql-error-1064 - 此 MySQL 代码中是否有任何语法错误?