jargon

Comparison

Continuous integrationvsTrunk-based development

Continuous integration

your change was merged and verified against everyone else's within the hour, not at the end of the sprint.

The practice of integrating everyone's work into a shared mainline frequently, with automated verification each time. The important half is the practice, not the server: a team with a build pipeline and week-long branches is not doing continuous integration, whatever the tool is called. The value is that integration problems are found while they are small and while the person who caused them still remembers the change.

Full entry →

Trunk-based development

everyone merged to main at least once a day, and the branch was never more than a few hours old.

Everyone integrates into one shared branch continuously, with incomplete work hidden behind flags rather than isolated on a branch. It makes merges trivial by making them constant, and it is the practice most strongly associated with high delivery performance in the DORA research. It requires real discipline elsewhere: tests you trust, feature flags, and the ability to hide unfinished work in production.

Full entry →

Related comparisons