CI/CD란 간단하게 말해서 어플리케이션 개발 단계부터 배포때까지 모든 단계들을 자동화해서 효율적이고 빠르게 사용자에게 빈번히 배포할 수 있도록 만드는 것을 말한다.
주기적으로 머지를 하기 때문에 머지의 충돌을 피할 수 있어서 개발 생산성을 향상시킬 수 있다.
머지되는 코드들은 자동으로 빌드되고 테스트되기 때문에 문제점을 빠르게 발견할 수 있다. 버그 수정을 빠르게 할 수 있다. 작은 단위로 수정을 해서 빠르게 발견하고 최종적으로 코드의 퀄리티 향상을 불러온다.
CI를 통해서 주기적으로 머지된 코드 변경사항들이 자동으로 Build되고 Test되어 배포할 준비를 하게되고, 준비된 Release가 배포 되어도 괜찮으면 수동적으로 배포하는 단계를 Continuous Delivery라고 한다.
또는 Release가 준비 되자마자 자동으로 사용자에게 배포할 수 있게 만들 수도 있는데, 모든 과정을 자동으로 해놓는 것을 Continuous Deployment라고 한다.
최종단계가 자동화 되었는지에 따라서 달라진다