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가 양호한 상태가 되면 승인을 제공하는 것은 변경 사항을 병합할 수 있는 능력을 명확하게 전달하므로 검토, 프로세스의 중요한 부분입니다. |
코드 소유자 | 파일을 사용하여 프로젝트의 코드를 담당하는 팀 구성원을 나타내려면 파일에 코드 소유주를 할당 CODEOWNERS 합니다. 코드 소유자는 merge request 승인자로 자동 할당되며 필요에 따라 설정하고 파일을 볼 때 표시할 수 있습니다. |
코드 소유자 섹션 | 코드 소유자 섹션을 사용하면 각 팀이 자체 코드 소유자 구성을 독립적으로 구성할 수 있으므로 여러 팀이 코드베이스의 공통 부분을 관리할 수 있습니다. |
Gerrit에 누락된 GitLab의 기능
기능 | 설명 |
---|---|
Image Discussion | 커밋 보기 또는 merge request 차이 보기 내에서 이미지의 특정 위치와 관련하여 해결 가능한 토론을 합니다. |
Merege Request Commit Discussion | Merge request 자체의 컨텍스트내에서 커밋에 대한 주석 |
Git 프로토콜 v2 지원 | Git의 유선 프로토콜은 클라이언트와 서버 간에 복제, 가져오기 및 푸시가 전달되는 방식을 정의합니다. |
⚠️ 해당 콘텐츠는 저작권법에 의하여 보호 받는 저작물로 기고자에게 저작권이 있습니다.
⚠️ 사전 동의 없이 2차 가공 및 영리적인 이용을 금하며, 온·오프라인에 무단 전재 또는 유포할 수 없습니다.
⚠️ 사전 동의 없이 2차 가공 및 영리적인 이용을 금하며, 온·오프라인에 무단 전재 또는 유포할 수 없습니다.