Module 02 · DevOps & CI/CD开发运维与持续集成·持续交付
Benefits of CICI 的主要优势
学习目标
观看本视频后,你将能够:
- 解释 持续集成(CI) 的主要优势
CI 的主要优势
1.更快的代码变更响应速度
CI 的一个显著优势是能够 更快速地响应代码变更。每当你对代码进行修改并推送到远程分支时,变更会自动进行测试。即使你忘记手动运行测试,CI 工具也会帮你测试。接下来,代码会进行构建,即使你忘记检查构建是否成功,CI 工具也会帮你检查。这样,你就能更快地将解决方案交付给客户,并且能确保所有测试通过,构建未损坏。
2.降低代码集成风险
通过 持续集成,你能将更小的变更不断集成到主分支中,从而降低了代码集成的风险。
- 变更越小,出错的风险就越低。
- 比如,不再是将 10 万行代码集成到数百万行的代码库中,而是将 10、20、30 或 50 行代码进行集成,极大地减少了需要处理的代码量。
记住:更小的变更意味着更低的风险。
3.提高代码质量
CI/CD 带来的另一个好处是能够 提高代码质量。因为代码会不断被审查和测试。每次 拉取请求(Pull Request) 都是一个进行代码审查的机会。
- 不再需要将代码审查作为一个单独的任务来安排。
- 作为最佳实践,每当有人提交拉取请求时,你应该去查看这些代码。
在审查 拉取请求 时,除了检查代码外,还应检查以下内容:
- 测试是否通过
- 代码覆盖率
- 如果代码覆盖率降低了,例如从 95% 降到 91%,这意味着有人写了代码,但没有为所有代码行编写测试用例。
- 你可以拒绝这个拉取请求,并要求补充更多的测试用例。
例如:
- 你可以说:“代码覆盖率下降了,暂时不批准这个请求,要求添加更多的测试用例。”
- 开发者修改后,重新运行测试,如果结果正常,代码覆盖率达到了标准,你就可以批准这个拉取请求。
这种 互相监控 的工作方式是开发团队应当遵循的,大家应当互相帮助,审查彼此的代码,进行频繁的代码审查。因为 20 行代码 的审查总比 2 万行代码 的审查容易得多。
4.确保版本控制中的代码可用
通过 CI/CD,你能够确保版本控制中的代码是可用的,这对 持续交付(CD) 至关重要。
- 比如,从 Git 或其他源代码管理系统中部署代码时,如何确保其中的代码是有效的呢?
- 答案是:你已经通过了持续集成测试,确保所有测试都通过。
如果没有测试每次变更,你可能会把 损坏的代码 部署到生产环境中。因此,必须确保 Git 中的 主分支(master/main) 的代码是可用的。
总结回顾
在本视频中,你学到了:
- CI/CD 提供了更快的代码变更响应速度,
- 降低了代码集成风险,
- 提高了代码质量,因为代码始终在被审查和测试,
- 确保版本控制中的代码是可用的。
- 开发团队应该定期互相监控彼此的工作。