开发侧的CI 应该怎么做

CI 的理念是「频繁地,快速地检测软件质量」,已经被证明是一种比较好的开发实践。本文沿着这一思路,试图总结出一点经验。

一种典型的开发人员流程如下:
image.png

CI中最重要的原则是两个:

  1. 频繁,频次尽可能高。如果一个自动化工具不能被频繁地使用,那么它的价值会被大打折扣。
  2. 快速。如果一个自动化工具,单次使用的时间太长,那么它的价值会被大打折扣。

根据上述原则,流程中每一阶段的对比:

开发侧的CI 应该怎么做_第1张图片

综合上述表格,有如下经验:

  1. push 阶段的CI必做
  2. 合并merge request的CI建议做,也可以将其提前
  3. 本地commit阶段的CI,有精力就做,但大概率投产比不会高

因此可以用一幅图概括:
开发侧的CI 应该怎么做_第2张图片

你可能感兴趣的:(ci-cd)