Continuous Integration Continuous Delivery Continuous Deployment
We generally come across terms like continuous integration, continuous delivery and continuous deployment while following Software model like Agile methodology. Mostly, these terms are confusing and they are inter-related. Let's find out the difference between them and try to understand what these actually mean in software development and how these can work together to give us a process that everyone including managers, developers and customers would like to follow.
Continuous Integration is continuously/constantly merging your code or development work into Master or Main branch so that while you work on other things, your committed/merged code can be tested. The basic logic behind this is to test your code as early as it is being committed and find or catch the bugs early so that you can fix them before the changes go to production. Most of the work is automated using build server which performs these tests and developers can work on their task simultaneously.