Definition

CI is a software development practice where an automated system is set up to build, test, and report on a piece of software after it has been checked into version control. Integration occurs because the various branches are merged into the main branch. This means whatever is in the main branch effectively represents the current state of the entire app, and since this happens every time code enters the main repository, it's continuous; hence, Continuous Integration.

In CI, whenever code is committed, an automated build system automatically grabs the latest code from the shared repository (main branch) and builds, tests, and validates the whole branch. By doing this regularly, errors are quickly detected and thus can be fixed quickly. Knowing that your commit could cause an unstable build, you are forced to commit small changes only. This also makes it easy to identify and fix bugs.

This is very important because, though the different parts of the app are tested and built individually, it may not be necessary after they have been merged into a shared repository. Each check-in is then verified by an automated build, allowing teams to detect problems early.

In the same light, there is also Continuous Deployment as well as Continuous Delivery. 

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset