CI/CD 是软件开发中的两个核心实践,合起来指代一套自动化的软件交付流程。
CI(持续集成,Continuous Integration):开发者频繁地将代码变更合并到主干分支,每次合并都会触发自动化的构建和测试。目的是尽早发现集成错误,避免"最后一刻才合并"的混乱。
CD(持续交付 / 持续部署,Continuous Delivery / Continuous Deployment):
持续交付:确保代码始终处于可发布状态,经过自动化测试后可以一键手动部署到生产环境。
持续部署:在持续交付的基础上更进一步,任何通过测试的变更都会自动部署到生产环境,无需人工干预。
简单说,CI 负责"代码合入和验证",CD 负责"随时或自动上线"。两者结合能大幅提升开发效率、降低发布风险。常见工具包括 Jenkins、GitLab CI、GitHub Actions 等