Continuous Integration and Continuous Deployment are essential parts of agile software development. In agile software development, there is no versioning of software. Instead, builds get rolled out continuously, which means that new features and bugfixes are integrated almost instantly rather than waiting for the next version release.
Continuous Integration (CI) and Continuous Deployment (CD) are sometimes used interchangeably, although they mean different things.
CI is the process of integrating changes into a code repository continuously with a process automatically testing the new or updated code with each code update. CD happens after the testing process has successfully finished. In this step, the integrated changes are deployed to a staging or production environment.
Both these processes enable developers to work faster and more efficiently since the builds and deployments are automated once the initial setup of the CI/CD system was made. In case a bug was shipped, the system can also be rolled back in the same manner, allowing for quick reactions and better user experience.
Read more on CI/CD in the Codeship Integration Essentials.