常运动,常年轻——配置库也要定期清除冗余文件

“SVN空间又满了,文件提交不上去!!!”小张看着刚刚CheckIn之后给出的“空间不足”的提示,不由得哀嚎出声。

公司的配置管理工具所在的服务器最初给了SVN版本库预留了100GB的空间,后来扩容到了300GB,现在300GB空间又满了,系统管理员准备借着服务器迁移的机会,再次调整SVN版本库的空间到1TB。

但是,即使SVN版本库的空间提高到1TB,就高枕无忧了吗?答案当然是否定的。假以时日,随着时间的流逝,这个空间注定会被再次填满。所以,仅仅开源是不够的,还应该截流,对SVN中存在的冗余文件进行清理,节省空间。

那么,SVN存在哪些冗余文件?

从受控库来说,受控的工作产品除了基线配置项之外,还存在有非基线配置项,比如软件开发计划、质量保证计划、配置管理计划这些计划类文档。而当一个项目已经闭项之后,这些非基线配置项在受控库中存在的意义就不大了,可以考虑将其从受控配置库中清除出去(个别优秀的可以放在组织资产库中供大家学习和参考)。

另外,当软件产品走到生命周期的尽头,已经退役了,那么基线配置项也没有必要存在于受控配置库中了。

从开发库来说,要整理的冗余文件就更多了。这些冗余文件包括很多的纳入数据管理计划中的报告、报表,它们只是在软件项目运行期间有存在的价值,软件项目闭项之后应该清除掉(同样,个别优秀的可以纳入组织资产库)。还有一些中间工作产品,比如概要设计说明、单元测试和集成测试计划、报告。这些中间工作产品最终会纳入到软件设计说明、软件测试计划、软件测试报告中。所以,软件项目闭项后,也应将它们从配置库中清除掉。

除此以外,有时候SVN还充当了数据交换工具的功能。由于没有更为方便的数据交换工具,开发人员往往借助SVN进行工具、资料的传递。这些占用了SVN大量的空间,这些内容更应该注意清理。

清理配置库的冗余文件应当定期进行。每个季度由开发库、受控库的配置管理员汇总统计待清除文件清单(含SVN中的路径),由系统管理员统一进行清除工作。

以SVN为例,彻底删除文件的步骤为:

把SVN库dump出来

使用svndumpfilter过滤掉要删除的文件

新建一个SVN库

再将处理好的文件load到新的SVN库里

最后,就像仓库需要人定期打扫和清理那样,配置库也需要定期进行这样的维护操作。唯有如此,才不会在项目进行紧张的时刻,出现“空间满了,无法提交”这样“掉链子”的情况,阻碍项目的进度。

微信赞赏专用通道

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180110B02GSM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券