oliverdavies.uk/source/_daily_emails/2024-07-02.md

1.3 KiB

title date permalink tags cta snippet
CI !== CI Pipeline 2024-07-02 daily/2024/07/02/ci-not-ci-pipeline
software-development
git
~ Continuous integration is not the same as a CI pipeline.

Yesterday I replied to a post on X:

I have worked on many teams that use CI tooling and call their process CI, but I have never seen CI actually done as defined on Wikipedia:

"CI is the practice of merging all developers' working copies to a shared mainline several times a day"

I've written about this before and I think the term CI or CI/CD is one of the most misused or misleading in software development.

CI, or continuous integration, is, as the post days, the process of everyone merging their changes at least once, or usually several, times a day.

It isn't something that is configured or created - it's a process.

Here's the thing

You can do CI without a CI pipeline and vice versa.

You can have a CI pipeline but not do continuous delivery or deployment.

What most people think of as CI or CI/CD is a set of automated checks that run when code is updated - usually on a feature or topic branch.

Whilst important, it's not "CI".