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

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

Какую проблему решает

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

Как именно решает проблему

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

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


Последнее изменение December 26, 2023: Review initial Russian content (8c3a264)