Fall in IT.

코드리뷰시스템 gerrit 간단 정리 본문

시스템구축

코드리뷰시스템 gerrit 간단 정리

D.Y 2017. 7. 19. 00:13

안녕하세요.

오늘은 코드리뷰 + git 저장소 시스템인 gerrit에 대해서 간단하게 알아보도록 하겠습니다.



gerrit이란?

  • Gerrit은 코드 리뷰 기능과 Git 서버 저장소 관리 기능을 제공하는 웹 기반 코드 리뷰 시스템이다.
  • Gerrit은 Git 기반의 코드 리뷰 시스템으로, 일정 점수 이상의 코드 리뷰 점수를 얻어야 코드의 변경 사항을 적용할 수 있게 해 코드 리뷰를 강제할 수 있는 도구입니다.
  • Gerrit은 애초에 코드 리뷰를 자동화하고 강제하는 목적에 맞춰 만들어진 시스템이다.

    개발자가 수정한 코드를 중앙 저장소에 보내면 자동으로 지정된 리뷰어에게 알림이 가고, 리뷰어는 온라인으로 리뷰를 진행한다. 리뷰에서 규정된 점수 이상을 획득하면 최종적으로 해당 코드를 반영할 수 있다.



gerrit 특징

- 리뷰 통과 조건 설정

- ide 도구와 연동

- 사용자 권한 관리

- 다양한 인증 수단 지원

- jenkins와 같은 CI(continuous integration)  도구와 연동 가능
  (코드 변경사항이 있으면, jenkins에서 감지해 자동으로 코드를 검증하고 빌드를 실행한 다음 결과를 gerrit에게 알려준다.)



gerrit 시스템 구성도

1. 인증을 위해 apache 서버 필요

2. gerrit을 설치할 서버 필요 (코드리뷰 및 git서버 기능 담당)

3. 데이터베이스 필요 (gerrit 시스템 설정 정보와 사용자 정보 등 gerrit 운영정보를 데이터베이스에 저장)

4. GitWeb 필요 (Gerrit에서 생성한 Git 저장소를 웹으로 조회할 수 있는 도구)



gerrit 설치와 권한 설정

기본 설치 절차

코드 리뷰 시스템을 구성하기 위한 기본 설치 절차는 다음과 같다.

  1. Git 설치
  2. 데이터베이스 설치
  3. Apache 웹 서버 설치
  4. Gerrit 설치
  5. Apache 웹 서버 연동
  6. GitWeb 설치


gerrit 사용방법



gerrit 사용시 개발 프로세스






코드리뷰 도입시 주의사항

  • 처음에는 강제로 시켜서 업무만 늘어난다는 반발이 있을 수 있다. 좋은 건 알지만 현실적으로 적용하기 힘든 선택 사항이었다.
  • 개발 공수 산정에 코드 리뷰가 포함되는 것은 당연한 일로 받아들여야 한다.


참조


Comments