术语 · 部署与运行

持续集成与持续部署

CI/CD

自动执行测试、构建和发布,减少手动操作带来的错误。

合并之后,机器接手到上线

靠自觉,还是靠流程
流程固化,发布才敢频繁
代码一合入,流水线自动跑测试、构建、部署——每次发布走同一套流程,不靠人手不抖。

换个角度想

CI/CD 像自动洗车机:以前洗车靠人拿水管,认真不认真看心情;进了洗车机,每辆车都是同一套流程出来的。

每次发布五道工序,漏一步就出事,怎么办?

  1. 改动合入主线

    提交「新增导出功能」

    接下来把它发上线

  2. 「小改动,测试就不跑了吧」

    一个老功能被悄悄改坏

    全量测试自动跑

    214 个用例 · 全绿才放行

  3. 在自己电脑上打包

    环境装过一堆全局依赖

    产物「在我电脑上是好的」

    干净环境从头构建

    环境每次全新

    产物跟谁的电脑都无关

  4. 手一抖传错目录,线上挂了半小时五道工序,每道都可能出人祸
    稳定上线和上次一模一样的流程,几分钟完成机器不嫌烦,也不会漏步骤

代码合入仓库

什么时候会遇到它

  1. 发布不再是大事

    每天发几次也不慌,因为每次流程都一模一样。

  2. AI 改动的守门员

    Agent 提的代码必须过全量测试,才能走到线上。

  3. 消灭环境差异

    统一环境构建,「在我电脑上是好的」不再出现。

想一想

团队每次发布都要一个人手动跑测试、打包、上传服务器,偶尔漏一步就出事故。怎么改进?

看答案

把这套步骤写成 CI/CD 流水线:合并代码自动触发测试、构建、部署。人会漏步骤,机器不会——发布事故大多数就是这么消灭的。

最容易踩的坑

CI/CD 的底气来自测试。测试稀疏的流水线只是「自动化地裸奔」——自动化越快,坏代码上线也越快。

⌘K搜索知识库

最近收录

正在载入知识索引…