GitLab vs Gerrit

Gerrit 개요#

Gerrit은 무료 웹 기반 팀 코드 협업 도구입니다. 팀의 소프트웨어 개발자는 웹 브라우저를 사용하여 서로의 소스 코드 수정 사항을 검토하고 이러한 변경 사항을 승인하거나 거부할 수 있습니다. Gerrit은 또 다른 검토 도구인 Rietveld를 포크하여 만들었습니다.

코드리뷰란#

코드리뷰란 개인이 만들어내는 오타, 버그를 줄이고 개발 표준들을 지키기 위해 여러 명의 개발자가 코드를 점검하고 피드백하는 과정입니다. 여러 명의 개발자가 코드에 관여를 하므로 코드에 대한 품질을 높이는 데 목적을 갖고 있습니다. 그뿐만 아니라 작성한 개인이 아닌 모두가 코드에 대한 공통 책임을 갖게 하여 협업을 돕는 데 의의를 둘 수 있습니다. 코 리뷰는 여러 사람의 코드를 보고 의견을 나눔에 따라 조직의 역량을 강화해주는 중요한 역할을 하기도 합니다.

그렇기 때문에 DevOps에서 코드리뷰를 하는 것은 필수로 여겨지고 있습니다. Gerrit은 이러한 코드 협업 도구이며 GitLab 또한 코드 리뷰기능을 가지고 있습니다. 그렇다면 차이가 무엇일지 알아보도록 하겠습니다.

Gerrit의 강점#

  • 리뷰 통과 조건 설정
  • IDE 도구와 연동
  • 사용자 권한 관리
  • 다양한 인증 수단 지원
  • CI 도구와 연동
  • 코드 검토 대시보드
    • 필터링 가능한 코드리뷰 세트가 있는 대시보드
  • 기여자 계약
    • 사용자는 프로젝트에 변경사항을 제출하기 전에 하나 이상의 기여자 계약에 에 서명해야 가능
  • 로봇 코멘트
    • 자동화된 타사 시스템에서 생성되는 인라인 주석 지원

Gerrit과 GitLab의 유사점#

기능설명
커뮤니티 지원GitLab 커뮤니티 포럼은 모든 GitLab 사용자가 공유하고 지원을 요청할 수 있는 활동이 활발한 장소입니다.
Merge Request Approvals프로젝트에 다중 사인 오프가 필요한 경우 병합하기 전에 모든 merge reqeust를 승인하도록 요구할 수 있습니다. 필수 병합 요청 승인을 사용하여 필요한 승인 수를 설정하고 특정 승인자 목록을 미리 정의할 수 있습니다. 코드의 품질과 표준을 보장하세요.
코드 리뷰와 여러 승인자GtiLab에서는 엄격한 코드 검토를 위한 merge request 최소 승인 사용자 수를 요구할 수 있습니다. 후에 승을을 취소할 수도 있습니다.
코드리뷰를 위한 승인 규칙적격한 승인자 목록, 각 승인자에 대한 최소 승인 수, 보호 대상 지점을 지정하여 적절한 사용자가 승인 규칙과 merge request 요청을 검토하도록 합니다. 이를 통해 엔지니어링, UX 및 제품과 같은 다른 팀의 리뷰를 쉽게 요청할 수 있습니다.
선택적 Merge Request 승인코드리뷰는 모든 성공적인 프로젝트의 필수 관행이며, merge Request가 양호한 상태가 되면 승인을 제공하는 것은 변경 사항을 병합할 수 있는 능력을 명확하게 전달하므로 검토, 프로세스의 중요한 부분입니다.
코드 소유자파일을 사용하여 프로젝트의 코드를 담당하는 팀 구성원을 나타내려면 파일에 코드 소유즈랄 할당 CODEWNERS합니다. 코드 소유자는 merge request 승인자로 자동 할당되며 필요에 따라 설정하고 파일을 볼 때 표시할 수 있습니다.
코드 소유자 섹현코드 소유자 섹션을 사용하면 각팀이 자체 코드 소유자 구성을 동립적으로 구성할 수 있으므로 여러팀이 코드 베이스의 공통 부분을 관리할 수 있습니다.

Gerrit에 누락된 GitLab의 기능#

기능설명
Image Discussion커밋 보기 또는 merge request 차이보기 내에서 이미지의 특정 위치와 관련하여 해결 가능한 토론을 합니다.
Merege Request Commit DiscussionMerge request 자체의 컨텍스트내에서 커밋에 대한 주석
Git 프로토콜 v2 지원Git의 유선 프로토콜은 클라이언트와 서버간에 복제, 가져오기 및 푸시가 전달되는 방식을 정의합니다.

깃랩 문서 바로가기