The difference is how far automation carries a change. Continuous Integration (CI) builds and tests every change. Continuous Delivery (CD) keeps every passing change ready to release. Continuous Deployment releases it to production with no human step.
With CI, developers merge code into a shared repository several times a day. Each merge triggers an automated build and test run.
Continuous Delivery extends CI by preparing every change that passes the pipeline for a production release. The code is always in a deployable state, but a person approves the deployment to production.
Continuous Deployment goes one step further. It deploys every change that passes the automated pipeline straight to production, without manual intervention.
A typical Continuous Delivery flow looks like this:
Code Commit → CI (Build + Test) → CD (Staging Deploy) → Manual Approval → Production Deploy
This answer doesn't lend itself to a diagram - it reads best . No credits were charged.
Why there's no diagram: “”
The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓
The diagram below the answer is the concept . Jump to it ↓