hooyes 灵感纵容非凡

什么是 CI/CD

2019-01-01
hooyes

在软件开发中经常会提到CICD这两个术语。但它们真正的意思是什么呢?

什么是 CI ?

CI 即 Continuous Integration 的缩写,中文即持续集成

持续集成(CI) 是在源代码变更后自动检测、拉取、构建和进行单元测试的过程。

什么是 CD ?

CD 有两层意思,一层是 Continuous Delivery 持续交付,另一层是 Continuous Deployment 持续布署。

“持续” 这并不意味着“一直在运行”,而是“随时可运行”。

持续交付(CD)意味着软件可以随时发布到生产中,通常是通过自动化将更改推送到临时系统。

持续部署(CD)更进一步,并自动将更改推向生产系统。

持续部署是一个很优秀的方式,可以加速与客户的反馈循环,不再需传统的“发布日”。开发人员可以专注于构建软件,当开发人员在主分支中合并一个提交时,这个分支将被构建、测试,如果一切顺利,则部署到生产环境中。

下面借用GitLab上的一张图描述 CI/CD 工作流程

hooyes-pic1

为什么我们的团队需要 CI/CD

持续集成(CI)

尽可能快地检测错误:一闪念有了解决方案即可解决问题

减少集成问题:更小的问题更容易消化

避免复合问题:让团队更快,更自信地发展

持续交付(CD)

确保每个更改都是可发布的:在发布前测试所有内容,包括部署

降低每次发布的风险:使发布变成很平常的一件事

更频繁地提供价值:可靠的部署意味着更多的发布版本

加速与客户的反馈循环:将客户的反馈更快速的反馈到产品上


Similar Posts

Content
TOP