CI/CD 是持续集成(Continuous Integration,CI)和持续交付/持续部署(Continuous Delivery/Continuous Deployment,CD)的缩写,它们是现代软件开发过程中的关键实践,旨在帮助开发团队更快、更频繁地交付高质量软件。

持续集成(CI)

持续集成是一种软件开发实践,开发人员频繁地(通常是每天多次)将代码变更集成到共享的主干(main branch)中。每当代码变更被集成时,会自动执行构建和测试,以尽早发现并修复集成错误,提高软件质量。CI 的关键在于自动化的构建和测试,这样可以缩短反馈周期,让团队更快地发现问题。

持续交付(CD)

持续交付是在持续集成的基础上,自动化将软件的变更交付到预生产或测试环境中的实践。它确保了软件可以在任何时间点被准确、安全地发布出去。持续交付主要是关于自动化部署流程,但仍然留给团队决定何时进行最终的生产发布。

持续部署(另一种CD)

持续部署是持续交付的延伸,它将自动化推进到生产部署的阶段。在持续部署的实践中,如果通过了自动化测试,代码变更会自动部署到生产环境中。这意味着软件的新功能和修复能够更快地到达最终用户手中。

CI/CD 通过减少手动过程,加速反馈循环,帮助团队提高开发效率和软件质量。通过自动化的集成和部署流程,团队能够更快地发现和解决问题,加速软件的交付速度。