How is CI Different from CD?

You have read that CI is different from CD. How are they different (CI vs. CD)?

CI, continual integration involves integrating code from two or more developers on a continual (regular or ongoing) basis. CD (with the "C" standing for continuous or continual) can refer to delivery (with a manual process into production) or deployment (an automatic process even to production)*.

Where Continuous Deployment focuses on the actual deployment, Continuous Delivery focuses on the release and release strategy.

However there may be no difference between continual delivery and continual deployment depending on the source**.

One source tends to say that CD subsumes CI.***

12 Factor App refers to separating the build and release stages. In keeping with 12 Factor App, tends to say that the CI process involves producing an artifact whereas the CD process is the one that transfers that artifact. Thus the build stage may happen in CI and the release stage may happen with CD. We tend to think that in a world as complex as the one we live in, you can have CD without CI (with CI/CD and DevOps tools that are available with AWS and Azure). Thus we think CD does not necessarily subsume CI.

CI may have no environment; 12 factor app recommends that integration happen independent of an environment. CD is environment-dependent.


** "It’s important to note that many credible authors do not differentiate between Continuous Delivery and Continuous Deployment." (This quote was taken from

*** "The idea is to do CI, plus automatically prepare and track a release to production." (This quote was taken from

To learn more about CI, see this posting.

Leave a comment

Your email address will not be published. Required fields are marked *