The 6 C's in DevOps and What does CI/CD Mean
Most computing practices start with Continuous Integration, which means multiple coders can merge code at the same time in a common repository. All continuous efforts like integration, development and deployment have the same vectors but operate in a different magnitude. Their collective goal is to make the software development efficient and faster. The main difference between them is the automation practice that is applied. It is imperative to bear in mind that these concepts are not mutually exclusive but inclusive of one another like the Russian Matryoshka dolls.
Once integration is complete on an optimized CI performance time, the leap to Continuous delivery is a practice of automating the entire software release process. The ideal goal would be to eliminate all manual interventions and anyone with sufficient privileges will be able to prepare and deploy a new release in a few clicks. Is that so easy? No it is frankly not, but possible in some XP environments. Some large organizations have multiple dependencies during implementation of the delivery pipeline. Here is a simple graphical representation
Continuous Deployment is high in the maturity scale and is a step above. It gives the ability where every change that is encountered in the source code is deployed to production automatically. It requires a highly mature environment of monitoring and accepting to changes quickly. However, continuous delivery is a loose concept and is possible to apply it beyond the scope of a single service application to the entire system or at the enterprise level.
To sum things up
Continuous Integration (CI): short-lived feature branches, team is merging to master branch multiple times per day, fully automated build and test process, which gives feedback within 10 minutes; deployment is manual.
Continuous Delivery (CD): CI + the entire software release process is automated, it may be composed of multiple stages, and deployment to production is manual.
Continuous Deployment: CI + CD + fully automated deployment to production.
Nicely explained.