“CI”는 개발자를 위한 자동화 프로세스인 지속적인 통합을 의미한다.
“CI”를 성공적으로 구현할 경우 애플리케이션에 대한 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트 되어 공유 레파지토리에 통합되므로 여러 명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작업을 할 경우 서로 충돌할 수 있는 문제를 해결할 수 있다.
지속적인 서비스 제공 및 지속적인 배포를 의미하여 이 두 용어는 상호 교환적으로 사용된다. 두 가지 의미 모두 파이프 라인의 추가 단계에 대한 자동화를 뜻한다. 때로는 얼마나 많은 자동화가 이루어지고 있는지를 설명하기 위해 별도로 사용된다.
지속적인 제공이란 개발자들이 애플리케이션에 적용한 변경 사항이 버그 테스트를 거쳐 레포지토리에 자동으로 업로드되는 것을 뜻하며, 운영팀은 이 리포지토리에서 애플리케이션을 실시간 프로덕션 환경으로 배포할 수 있습니다. 이는 개발팀과 비즈니스팀 간의 가시성과 커뮤니케이션 부족 문제를 해결해 줍니다. 지속적인 제공은 최소한의 노력으로 새로운 코드를 배포하는 것을 목표로 한다.
지속적인 배포란 개발자의 변경 사항을 레파지토리에서 고객이 사용 가능한 프로덕션 환경까지 자동으로 릴리스하는 것을 의미한다.
