什么是CI/CD

[复制链接]
发表于 2024-10-20 14:13:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
根本概念:
        CI/CD 是连续集成(Continuous Integration)和连续交付/连续部署(Continuous Delivery/Continuous Deployment)的缩写,它旨在通过主动化的流程和工具进步软件开辟的效率、质量和交付速率。CI/CD 通常被统称为“CI/CD 管道”
CI(连续集成,Continuous Integration)
        连续集成是指开辟人员经常地将代码集成到一个共享的代码库中,通常每天多次。这种实践鼓励频繁的小步提交,目的是尽早发现和修复问题。CI 包含以下几个关键步调:
   

  • 主动化构建:每次代码提交触发一个主动构建过程,确保代码能够乐成编译。
  • 主动化测试:在构建过程中运行主动化测试(如单元测试、集成测试),以验证新提交的代码是否破坏现有功能。
  • 反馈机制:如果构建或测试失败,开辟者会立即收到反馈,以便尽快办理问题。
  CD(连续交付,Continuous Delivery)
        连续交付是在连续集成的根本上,确保代码在任何时候都可以安全地发布到生产环境。换句话说,连续交付包管了主分支上的每个版本都颠末了富足的测试,可以随时部署。
   

  • 主动化部署:虽然在连续交付中部署到生产环境通常必要手动确认,但所有的部署过程(如发布到测试环境、生成发布包)都是主动化的。
  • 频繁发布:团队能够频繁发布更新,但每次发布都很小,风险也相对较低。
  CD(连续部署,Continuous Deployment)
        连续部署是连续交付的下一步。它通过主动化管道直接将每次代码变动部署到生产环境,而无需人工干预。任何通过主动测试的代码都主动发布到生产环境。这意味着发布频率极高,但要求测试主动化和代码质量标准极为严格。
        连续交付必要人工干预来评估和决定何时将代码部署到生产环境中,而连续部署则是将代码主动部署到生产环境中,淘汰了人工干预的步调
CI/CD 的利益
   

  • 加速开辟和发布速率:主动化使得开辟团队能够更快地交付新功能和修复。
  • 进步软件质量:频繁集成和测试使得问题能够在早期发现,淘汰了生产环境中的错误。
  • 进步团队协作效率:开辟人员能够更多地专注于编码,而不是手动测试和部署。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表