【前端工程化面试题】什么是 CI/CD

CI/CD 是软件开发中的两个重要实践,分别代表持续集成(Continuous Integration)和持续交付/持续部署(Continuous Delivery/Continuous Deployment)。

  1. 持续集成 (Continuous Integration, CI):持续集成是一种软件开发实践,通过将代码频繁地集成到共享存储库(如版本控制系统)中,并自动运行测试来验证新代码的正确性。主要目标是尽早地发现和解决代码集成问题,以便快速反馈给开发人员。CI 通常涉及以下几个关键步骤:

    • 开发人员提交代码到共享存储库。
    • CI 服务器自动获取最新的代码,并进行构建和测试。
    • 如果构建和测试通过,则发布构建结果或者集成结果,否则通知开发人员存在问题。
  2. 持续交付/持续部署 (Continuous Delivery/Continuous Deployment, CD)

    • 持续交付 (Continuous Delivery, CD):持续交付是一种软件开发实践,旨在确保软件能够随时随地以可部署的状态交付给用户。在持续交付中,每次成功的 CI 构建都会生成一个可部署的软件包,但部署的时机由人工决定。
    • 持续部署 (Continuous Deployment, CD):持续部署是持续交付的自动化形式,其中每次成功的 CI 构建都自动部署到生产环境中,不需要人工干预。持续部署通常在具有高度自动化的软件交付管道中使用,以实现快速、可靠地交付软件。

综合来说,CI/CD 是一种在软件开发中广泛应用的实践,旨在通过自动化、持续化地集成、测试和交付软件来提高开发团队的效率、质量和反应速度。

相关推荐
DsirNg10 小时前
别把联调当验收:用可执行契约管住接口变更
ci/cd·mock·openapi·契约测试·接口契约·前后端协作·pact
进哥AI研习社1 天前
AtomCode 高阶玩法揭秘:Headless 模式集成 CI/CD、Skills 自定义与项目指令文件深度实战
ci/cd·atomcode·headless 模式·daemon 服务·skill 自定义·.atomcode.md·自动化审查
运维开发那些事2 天前
GitOps最佳实践 (gitlab ci + ArgoCD)
ci/cd·devops
可乐ea2 天前
Anthropic 的 CI/CD 值班智能体:Claude Tag 当一线响应者的架构拆解与踩坑复盘
ci/cd·架构·claude·devops·ai智能体·mcp
数据库技术讲堂2 天前
从 GitOps 到数据库变更:NineData 如何打通 CI/CD 的数据库治理链路
java·数据库·ci/cd
汪海游龙2 天前
本地源码还是 Maven 版本?Gradle composite build 双轨依赖的正确接法
android·ci/cd·kotlin
Ashley的成长之路3 天前
前端性能优化实战手册·第5篇(最终篇):性能监控与 CI/CD 集成
前端·ci/cd·性能优化
小小测试开发4 天前
AI Agent 回归测试:Replay 录一次、CI 跑千遍,像 Jest 一样给非确定性系统写断言
人工智能·ci/cd
JavaDog程序狗6 天前
【指南】uni-app微信小程序多环境CI-CD完全指南
ci/cd·uni-app·jenkins
Patrick_Wilson6 天前
sccache 用在 Rust 上为什么常「不省编译」:原理、限制与 Windows 接入
ci/cd·rust·编译器