From the course: Continuous Integration: Tools
What you should know
From the course: Continuous Integration: Tools
What you should know
Before we get into any technical details, let's discuss the meaning of continuous integration, continuous delivery, and continuous deployment. With continuous integration, developers work on their code in a local environment and commit their changes to a shared repository on a regular basis. Their code can then be combined, or in other words, integrated with code already stored in the repository. The new code is tested and checked for any errors. Using this method, developers can find and resolve problems more quickly compared to waiting until all the code for an application is complete and integrating everything at once. Continuous delivery is a partner to the continuous integration process. Continuous delivery enables developers to build, test, and release their software with every new change. By including tests in the delivery process, engineers can be confident that the final product meets requirements and doesn't have any unexpected features, also known as bugs. Once the application is delivered, it can be deployed as needed. When a deployment completes without human interaction, is referred to as continuous deployment. In this case, the application is automatically built, tested, and deployed into a production environment. To give another dimension to this course, exercise files are available. The files are packed with information to help you get the most out of this course, especially if you want a more hands-on experience with any of the tools we discuss. If you're working through the hands-on exercises, it'll be helpful if you're familiar with application development and the software development process. If you already have some experience building, testing, and deploying applications, you'll be fine. Many CI/CD tools are configured with scripts and command line tools, so if you're comfortable scripting and using a command line interface, you'll be all set. It'll also be helpful if you're familiar with source code management tools like GitHub, Bitbucket, or GitLab. Most tools start their processes when changes are applied to a code base, so you'll want to know how to push code to a repository, either from your local system or a web interface. I'll share more information on the exercise files in an upcoming video.