2020年8月,Linux发布内核5.8RC版,新贡献者约100人,commit超过14000次,新代码约80万行。而且,距离上一个5.7正式版发布也不过2个月左右。视频地址:https://www.zentao.net/xp/con...然而,真正让大家震惊的是,如此庞大的Linux内核项目竟然能够有条不紊地运行30年。这归结为开发人员在Linux内核项目中一直坚持的一组基本原则。1.每次commit只能做一件事。项目维护者的每次提交只能做一件事,不一定是小事,但一定是针对单个任务的变更。这可以帮助项目维护人员更轻松地识别和隔离任何有问题的更改,而不会影响其他功能。2.commit不能破坏构建。每个提交都必须作为一个独立的更改来工作,确保每个步骤都可以正常运行并且不会导致性能下降。例如,当函数原型发生变化时,必须更新调用它的每个文件以防止构建中断。3.所有代码一分为二。二分法是一种运算,类似于二分查找算法,可以让开发者快速找到所有错误发生的准确时间点。而且,这个原理只能基于上面提到的两个原理来实现。4.从不rebase公共分支Linux项目工作流程不允许rebase任何其他人使用的公共分支。如果您对这些公共分支进行变基,变基后的提交将不再匹配基于原始存储库的相同提交。5.Git正确合并对于合并分支,Git比其他版本管理系统更能高效地解决代码冲突等问题,避免了大量的手工工作。6.保留定义明确的提交日志编写良好的代码更改日志可以帮助代码审查过程,也可以帮助后续维护人员确定代码是否可以删除,或者如何修改。7.持续测试和集成开发人员在向上游发送提交请求之前测试每个提交。持续的测试和集成有助于尽快发现集成错误。这个过程可以大大减少集成问题,同时保持项目的高质量。正是因为在开发过程中,所有项目维护者都严格遵守并贯彻执行这些基本原则,才使得Linux内核项目“健康成长”有序进行。同时也希望本节视频能够给大家在项目维护过程中一些启发和帮助。更多精彩视频分享:https://www.zentao.net/page/c...视频内容来源:https://www.linux.com/news/wh...https://juejin.im/post/684490...
