Continuous Integration, Continuous Delivery, Continuous Deployment (CI/CD^2):sushi:

Continuous Integration (CI)

A philosophy of making small changes to code and frequently checking code into version control to get feedback. The technical goal of CI is to establish a consistent and automated way to build, package, and test applications. With consistency in the integration process in place, teams are more likely to commit code changes more frequently, which leads to better collaboration and software quality.

Continuous Delivery (CD)

Automates the delivery of applications to selected infrastructure environments. CD ensures there is an automated way to push code changes to different environments. CD automation then performs any necessary service calls to web servers, databases, and other services that may need to be restarted or follow other procedures when applications are deployed.

Continuous Deployment (CD)

CD goes one step further than delivery where if all changes made pass tests then automatically the code is deployed to the real product, i.e. can be used by the customers straight away. Only a failed test would prevent the code from being deployed. Continuous deployment means that there is less pressure on the dev team as it reduces the importance of a specific date of reuse as there work is constantly being released and improved upon.