【前端工程化面试题】什么是 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 是一种在软件开发中广泛应用的实践,旨在通过自动化、持续化地集成、测试和交付软件来提高开发团队的效率、质量和反应速度。

相关推荐
宋均浩1 天前
# GitHub Actions 实战:从零搭建 CI/CD 流水线的 5 个核心配置
ci/cd
霸道流氓气质3 天前
GitLab CI/CD 完全指南
linux·ci/cd·gitlab
sbjdhjd3 天前
从零搭建企业级 CI/CD(下):Jenkins+GitLab+Harbor 全链路实战指南
git·servlet·ci/cd·云原生·云计算·gitlab·jenkins
糖果店的幽灵4 天前
软件测试接口测试从入门到精通:接口测试CI_CD集成
软件测试·ci/cd·接口测试
平头老王4 天前
CI/CD流水线设计 — 第1章:常见误区
ci/cd·自动化·devops·持续部署·持续集成
星落zx5 天前
在CI/CD流水线里接入多模型自动Code Review,踩坑与方案分享
人工智能·ci/cd·代码复审
又是进步的一天5 天前
一台虚拟机学习CI流程
学习·ci/cd·云原生·容器·kubernetes·devops
w3296362716 天前
八、OpenCode 高阶玩法:CLI 自动化、CI/CD 集成与远程协作
运维·ci/cd·自动化·ai编程·开发工具·opencode
brycegao6 天前
如何搭建标准化 Git 工具流,保障 Android 团队代码质量
android·ci/cd
Dontla6 天前
CI/CD前世今生(持续集成、持续交付、持续部署、Jenkins、Github Actions)
ci/cd·github·jenkins