CI, continuous delivery, continuous deployment
Summary: CI/CD actually hides three distinct practices, two of which unfortunately share the same initials. Continuous integration deals with merging and testing code. Continuous delivery guarantees that a validated version is ready to go to production. Continuous deployment sends it there automatically. This lesson clarifies things once and for all, then traces the history back to 1991.
1. The misunderstanding to clear up right away
The acronym CD refers to two different things, and that is the number-one source of confusion in the field.
Tip to never confuse them again: the word deployment carries the idea of going to production. Delivery only means delivering a ready package — someone still has to open it.
In an interview, if you are asked "what is CD?", the best answer starts with: "it depends which one — continuous delivery or continuous deployment? Both are abbreviated CD". That immediately demonstrates a fine-grained understanding.
2. Continuous integration — rigorous definition
The most frequently missed point: CI is not a tool, it is a team discipline. You can very well have GitHub Actions configured and not do continuous integration — all it takes is developers keeping their branches open for three weeks. Conversely, a very disciplined team was already doing CI in 2003 with homemade scripts.
3. Continuous delivery — rigorous definition
The decisive test to know whether you are doing continuous delivery: ask yourself "if my boss asks me to put the latest version into production right now, how long do I need?". If the answer is less than 15 minutes and without stress, you are doing continuous delivery. Otherwise, you are not.
4. Continuous deployment — rigorous definition
Beware of a frequent misconception: continuous deployment is not the ultimate goal every team should aim for. Many very high-performing organizations deliberately stop at continuous delivery, for perfectly valid business or regulatory reasons. A bank or a medical device cannot do continuous deployment without approval.
5. The three practices side by side
Important reading: these levels are cumulative. Continuous deployment contains continuous delivery, which contains continuous integration. You cannot skip a step — a team attempting continuous deployment without solid CI is putting itself in danger.
6. The table that clarifies everything
| Criterion | Continuous integration | Continuous delivery | Continuous deployment |
|---|---|---|---|
| Scope | Build + tests | Up to "ready for prod" | All the way to production |
| Merge frequency | Several times a day | Several times a day | Several times a day |
| Goes to production? | No | On human click | Automatically |
| Human intervention | None (within the pipeline) | One approval click | None |
| Test requirements | Medium to good | Good | Very high |
| Required observability | Low | Medium | Very strong |
| Adopted by | Almost all teams | A large majority | A mature minority |
| Compatible with regulated sectors | Yes | Yes | Rarely |
Useful figure: according to the DORA and State of DevOps surveys, the vast majority of teams practice CI, a good half reach continuous delivery, but only a minority — often very mature product companies — practice true continuous deployment.
7. A short history of CI/CD — from 1991 to 2026
Two founding books to know by name, because they constantly come up in discussions:
- "Continuous Delivery" (2010) — Jez Humble and David Farley. Defines continuous delivery and the deployment pipeline.
- "Accelerate" (2018) — Nicole Forsgren, Jez Humble, Gene Kim. Scientifically establishes the link between CI/CD practices and organizational performance. It is the book that made the DORA metrics indispensable.
8. Three vocabulary traps to avoid
Remember in 30 seconds
- CI = continuous integration. Merge and validate several times a day. One single meaning.
- CD = two meanings: continuous delivery (ready, human click) or continuous deployment (automatic).
- Mnemonic trick: deployment → it goes to production. Delivery → it is ready to go.
- The three levels are cumulative: you do not skip a step.
- Continuous deployment is not mandatory — many mature teams stop at continuous delivery.
- History: term coined in 1991, canonized by Martin Fowler in 2000, continuous delivery defined in 2010, DORA metrics in 2018, GitHub Actions in 2019.
- Two books to cite: "Continuous Delivery" (2010) and "Accelerate" (2018).
Next: Anatomy of a pipeline: stages, jobs, runners, artifacts →