代码管理和软件配置管理应该怎样做?| 研发效能提升36计

本文探讨了代码管理和软件配置管理的重要性,指出代码库组织结构混乱、Commit不当等问题,并提出解决方案。建议按照系统、应用和模块组织代码库,保持Commit的原子性,将配置视为代码进行管理,以提升研发效能。
摘要由CSDN通过智能技术生成

在这里插入图片描述

专栏策划|雅纯

志愿编辑|张晟


软件交付是以代码为中心的交付过程,其中代码的作用有几点:第一,最终的制品要交付成什么样,需要通过代码描述清楚;第二,代码定义了系统和软件是怎样工作的;第三,代码定义了系统的运行环境是怎样的。所有这些都是围绕代码。

那我们的代码管理和软件配置管理应该怎样做呢?

我们先看一个例子。下图是某个团队的代码组织结构,这样的代码组织结构会有什么问题呢?
在这里插入图片描述
问题1:代码组的命名方式混乱

我们发现在最上层的目录中叫risk-managenment,这是一个系统,这个系统是风险管理。但是子目录写的是叫“qinglong”,那“qinglong”是应用还是团队,我不知道。然后下面还有一个玄武,下面还有一个aTeam,中英文混杂,这样的命名方式是很混乱的。

问题2:用代码块存储外部二进制文件

在android-sdks里面会存放很多sdk文件,这些文件是很大的,这个代码库存储很多外部二进制文件,我们知道在代码库直接存这样的大文件,对整个代码库的资源消耗是非常大的。

问题3:同一归属的代码保存在不同的代码组

在aTeam目录下有一个data-model,但是其他相关的文件都在玄武下,就是data-console、data-task、data-ui,我们不知道它具体是什么,但是我们知道这几个大概率是同一个应用或者是同一个产品,所以它在两个不同的层级也是不合理的。

问题4:公共库保存在子代码组里

再下一个是common-lib,通过名字来理解就是公共库,但是这个公共感觉只给玄武这个子代码组使用。

问题5:应用的文档(或测试)与应用分开存放

最后还有一个docs目录下有risk-docs和data-docs,一个是针对风险控制的系统,一个是针对数据地系统。那这个里面文档也是一个代码库,文档代码库和测试代码库,它和应用是分开存放的,这也是不合理的。

好的代码库组织形式是怎样的?

问题:假设所有的代码都保存在一个代码库,且所有人均可访问,代码库应该怎么组织&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值