This page is part of my personal knowledge database, that helps me to store and navigate my learnings.
Read on here for details

Continuous Integration

ยท 2 minute read

Continuous Integration - aka CI - is the practice of often / regular code merges into central (mainline) branch in central repository.

Regular means at least daily. Often hourly. Or more frequent. It also means every member in the developer teams release at that frequency. In that sense, it is also a workflow - or at least requires a compatible workflow like Trunk Based Development.

Therefore CI is a core concept for DevOps, an implementation of the Principles of Flow.

The goal is to minimize merging issues, that would result from developers working on the same code base, working in different (feature) branches over a (too) long time.

Before the code commits are actually merged Automated Testing runs to verify that code is in good working order. Usually a Build Package is created.

After CI is done - that is: a new, verified code commit is the new head of the version history - Continuous Delivery or Continuous Deployment is triggered.

CI is a preceding or a the first stage / step in a Deploy Pipeline.

Continuous Integration.svg

Continuous Integration is for the most part what happens during the Build Stage, i.e. what is executed in the Build Pipeline, when triggered by changes in Version Control.