Непрерывная интеграция (CI)

Описание

Непрерывная интеграция (Continuous Integration, CI) — это практика, при которой правки принимаются в код с максимальной возможной регулярностью. CI является предварительным условием для непрерывной доставки (CD). Процесс CI традиционно начинается с внесения правок в код в системе контроля исходного кода (Git, Mercurial или Subversion) и заканчивается получением протестированного артефакта, готового к использованию CD-системой.

Проблема

Программные системы часто бывают большими и сложными, их поддерживает и обновляет множество разработчиков. Работая параллельно над разными частями системы, эти разработчики могут вносить конфликтующие изменения и непреднамеренно “портить” работу друг друга. Кроме того, если над одним проектом работает несколько разработчиков, то все повседневные задачи, такие как тестирование и оценка качества кода, приходится повторять каждому из них, что ведет к потере времени.

Решение

Программное обеспечение CI автоматически следит за тем, чтобы изменения, вносимые в код, нормально в него интегрировались после каждого коммита, сделанного разработчиком. Использование CI-сервера для проверки качества кода, запуска тестов и даже развертывания является довольно распространенной практикой, превращая его в один из неотъемлемых инструментов для контроля качества в командах разработчиков. CI позволяет командам разработчиков перевести каждый коммит кода либо в разряд провальных, либо в разряд жизнеспособных кандидатов на релиз.

Связанные термины


Последнее изменение October 10, 2023: Add ru prefix to links where needed (f788c89)