지속적 통합 (CI; continuous integration)

N·2022년 8월 8일
0

배포

목록 보기
3/4
  • CI는 지속적 통합(continuous integration)의 약자로, 팀 구성원이 각자의 작업을 자주 통합하는 소프트웨어 개발 방식

  • CI의 3단계
    1) Code: 개발자가 코드를 코드 저장소에 Push한다.
    2) Build: 코드 저장소로부터 코드를 가져와서 (유닛 테스트 후) 빌드한다.
    3) (Test): 코드 빌드의 결과물이 다른 컴포넌트와 잘 통합되는지 확인한다.

  • 빌드는 개발자만 읽을수 있는 소스 코드를 실행 가능한 코드 및 프로그램으로 변환하는 과정이다. 번들링도 브라우저가 소스 코드를 더 잘 읽을 수 있게 도와줌으로, 빌드의 과정 중 하나로 볼 수 있다. 종종 두 용어 모두 "빌드"로 통용되기도 한다.

  • 지속적 통합은 모든 코드 변화를 하나의 리포지토리에서 관리하는 것 부터 시작합니다. 모든 개발팀이 코드의 변화를 확인할 수 있기 때문에, 투명하게 문제점을 파악할 수 있다. 그리고 잦은 풀 리퀘스트(pull request)와 머지(merge)로 코드를 자주 통합한다. 이 때, 기본적인 테스트도 작동시킬 수 있다. 이렇게 지속적 통합을 통해 개발팀은 각자 개발한 코드를 이른 시점에, 자주 합치고, 자주 테스트 해볼 수 있다.

  • 지속적 통합으로 보안 이슈, 에러 등을 쉽게 파악할 수 있어 해당 이슈를 빠르게 개선할 수 있다. 이전에는 각자 개발자가 작성한 코드를 합치고 난 후, 모두 모여서 빌드를 시작하고 나서야 문제점을 파악할 수 있었다. 지속적 통합이 적용된 개발팀은 코드를 머지하기 전, 이미 빌드 오류나 테스트 오류를 확인하여 훨씬 더 효율적인 개발을 할 수 있게 된다.

profile
web

0개의 댓글