Intégration continue
L'intégration continue (continuous integration ou CI en anglais) est une pratique de développement logiciel qui consiste à intégrer fréquemment les modifications du code source dans la base de code principale.
C'est une pratique essentielle dès qu'une équipe de développeur·euse·s travaille sur une base de code partagée. Dans ce contexte, plusieurs personnes peuvent apporter des modifications qui se chevauchent en même temps, chacune dans sa propre branche. L'intégration fréquente des changements de chaque développeur·euse réduit fortement le risque de conflits et facilite leur résolution lorsqu'ils surviennent.
Comme le souligne Martin Fowler (angl.) :
L'intégration concerne avant tout la communication. Elle permet aux développeur·euse·s d'informer les autres des changements apportés. Une communication fréquente permet à chacun·e de suivre rapidement l'évolution du code.
Un aspect majeur de l'intégration continue est l'automatisation de la construction et des tests : typiquement, dans un système CI, dès qu'une personne ouvre une pull request pour proposer ses modifications sur la branche principale, un processus automatisé construit le produit et exécute les tests. Une fois tous les tests validés, la modification peut être relue par les pairs.