1.6 CI vs CD vs deploy vs release
In short: Continuous deployment is optional and needs strong tests and monitoring.
| Term | Meaning | Real-world picture |
|---|---|---|
| Continuous integration (CI) | Merge often; build and test automatically on each change | Every code change is checked before the shared branch |
| Continuous delivery | Keep a releasable build ready | A tested build sits labelled and ready to ship |
| Continuous deployment | Every green build goes to production automatically | Every green build goes live with no manual gate |
| Deploy | Install a build onto an environment (staging or prod) | Put the new build on the server |
| Release | Make a change visible to users (feature flag / announce) | Tell users the new badge is live |
Many companies do CI + continuous delivery with a manual approve step before production. Continuous deployment is optional and needs strong tests and monitoring.
Developer laptop
| push / pull request
v
+------------------+
| CI: lint + test |
| + build |
+--------+---------+
| artefact (e.g. Docker image)
v
+------------------+ optional approval
| staging deploy | ---------------------> production deploy
+------------------+ |
v
users (release)
Tiny story. The team deploys version badge-api:a3f2 to production at 10:00 behind a flag. At 12:30 they release the new badge field to 10% of users. Deploy and release were two different moments.
Ravindra Bagale's Tip
Khup students "CI/CD" ekach shabd mhanun vaprtat. Interviewer vicharta "CI aani CD madhla farak?" — CI = integrate + test; CD = ready to deliver (and sometimes auto-deploy). Don shabd vegle sanga. Lakshat theva.
Practice task
Label each event CI, deploy, or release: (a) tests run on a pull request, (b) staging updated with build 42, (c) product turns on the new feature banner for all users, (d) production hosts build 42 but the banner flag is still off.