[ English | Indonesia | 한국어 (대한민국) | español (México) | English (United Kingdom) | Deutsch | 中文 (简体, 中国) ]

Gerrit 사용

참고

이 섹션에서는 Gerrit 계정 설정 안내서를 완료했다고 가정합니다

게리트는 다음을 가능하게 합니다.

  • OpenStack 저장소에 제안된 변경 사항에 대한 리뷰를 받을 수 있습니다.

  • 특정 커뮤니티 구성원에게 검토를 요청합니다.

  • Webui에서 패치를 빠르게 변경합니다.

변경사항을 푸시하고 있습니다.

참고

이것은 빠른 시작 버전입니다. 복제 방법, 패치 생성 및 변경 사항에 대한 보다 심층적인 설명을 위해 여기서 찾아보기 를 참조할 수 있습니다.

다음은 첫 번째 기여를 위해 알아야 할 명령 목록입니다.

일부 리포지토리의 복사본을 복제하려면 다음을 수행합니다.

git clone https://opendev.org/openstack/<PROJECT_NAME>

참고

여기서 검색 기능을 사용하여 OpenDev git 저장소 브라우저 와 동일한 리포지토리를 찾을 수 있습니다.

설정 및 학습 GIT 섹션을 완료한 후 다음 명령은 리포지토리가 게리트에 대해 알 수 있도록 구성하고 Change-Id 커밋 후크를 설치합니다. 복제하는 리포지토리에 한 번만 이 작업을 수행하면 됩니다.

git review -s

개발 분기를 작성합니다(선택한 이름으로 대체 분기_이름). 마스터에서 작업하는 것보다 각 패치에 대해 새 분기를 만드는 것이 좋습니다.

git checkout -b <branch_name>

분기에서 업데이트된 파일을 확인하려면 다음을 수행합니다.

git status

분기와 리포지토리 간의 차이를 확인하려면 다음을 수행합니다.

git diff master

새 파일을 추가하지 않은 경우 다음을 사용하여 모든 변경 사항을 커밋합니다.

git commit -a

커밋 메시지 작성에 대한 모범 사례는 Git commit 메시지 구조 요약 을 읽습니다. 검토를 위해 변경사항을 보낼 준비가 되면 다음을 수행합니다.

git review

성공하면 Git 응답 메시지에 변경 내용을 추적하는 데 사용할 수 있는 URL이 포함됩니다.

동일한 검토 내용을 추가로 변경해야 하는 경우 다음을 사용하여 변경할 수 있습니다.

git commit -a --amend

이렇게 하면 이전에 실행한 변경사항 집합에서 변경사항이 커밋됩니다. 검토를 위해 최신 버전을 보내려면 다음 연락처로 전화해야 합니다.

git review

변경 사항을 추적합니다.

변경 사항을 제안하면 코드 리뷰 에서 추적할 수 있습니다. 로그인한 후 제안된 변경사항에 대한 “검토 중” 대시보드, 검토 중인 변경사항에 대한 “검토 중” 대시보드, 검토자 또는 소유자가 된 “최근에 닫힌” 변경사항이 표시됩니다.

검토자 추가

때로는 기득권이 있거나 멘토링을 도와주기 때문에 패치를 따져봐야 할 사람들이 있을 수 있습니다. 사용자가 새 패치 또는 패치 세트를 업로드했음을 알리는 가장 쉬운 방법은 게리트 웹 UI에서 검토자로 추가하는 것입니다. 이름, 게리트 이메일 주소, ssh 사용자 이름 또는 게리트 ID로 검색할 수 있습니다.

../_images/invite-reviewers.png

일반적으로 새로운 패치 세트, 주석, CI 시스템 투표 등과 같은 패치와의 각 상호 작용은 패치의 모든 검토자에게 전자 메일 알림을 보내기 때문에 이 게리트 기능을 과도하게 사용하지 않도록 하는 것이 가장 좋습니다.

참고

패치를 검토하면 검토자 목록에 자동으로 추가됩니다.

Gerritt 웹 편집기

로컬에서 변경하지 않고 게리트 웹 인터페이스에서 패치를 편집하고 변경 내용을 게시할 수 있습니다. 일반적으로 대규모 코드 업데이트의 경우 로컬 작업 분기가 자동으로 업데이트되지 않으므로 이 방법은 권장되지 않습니다. 경우에 따라, 패치가 기본적으로 펩8의 작은 장애-끝에 공백, 줄 바꿈 등을 제외하고 통합할 준비가 된 경우, 이 게리트 기능은 전체 ‘git add’, ‘git commit –amend’, ‘git review’ 프로세스를 거치지 않고도 변경 사항을 신속하게 편집하고 게시할 수 있습니다.

Gerrit 웹 편집기에 액세스하려면 파일에 대한 Gerrit Code Review 페이지 상단에 있는 패치 세트 번호 옆에 있는 종이에 연필로 쓰는 것처럼 보이는 아이콘을 클릭합니다.

../_images/web-editor.png

변경 내용을 검토

프로젝트에서 시작하는 방법으로 변경 사항을 검토하는 것이 권장되는 경우가 많습니다. 이렇게 시작하든 말든 중요한 공동체 활동입니다. 변경 검토 시 어떤 표를 사용해야 하는지에 대한 자세한 지침은 OpenStack Way 변경 검토 방법 을 참조하시기 바랍니다.

인라인 코멘트

어떤 것이 표현되거나 수행되는 방식에 대해 질문이 있거나 다른 문제를 발견한 경우 패치 작성자에게 가장 쉽게 해당 플레이스에 대한 의견을 제시할 수 있습니다. 인라인 코멘트는 ‘응답하라’ 버튼을 누르고 패치셋에 투표를 추가하면 일괄적으로 게시됩니다.

참고

‘응답’을 클릭하고 패치에 투표하기 전까지는 사용자가 작성한 모든 인라인 코멘트가 초안으로 존재합니다.

+/- 1 & 0

기여자가 패치에 대해 투표해야 하는 기본 가치 집합은 -1, 0 또는 +1입니다. 이러한 값은 비교적 간단한 시스템에 해당합니다

../_images/regular-reviewer.png

-1 : 이 패치를 병합하려면 추가 작업이 필요합니다. -1은 일반적으로 패치를 병합하기 전에 수정해야 하는 일부 문제가 검토자에게 나타날 때 제공됩니다. 저자가 다루어야 할 이슈는, 이상적으로는, 더 큰 이슈가 없는 한, 인라인 코멘트가 게시될 것입니다. 전체적인 접근방식에 이상이 있을 경우 투표와 함께 전반적인 의견을 남겨 우려를 제기할 수 있습니다.

참고

패치가 -1을 얻는다면 나쁜 소식은 아니지만, 단지 조금 더 많은 작업을 해야 한다는 의미일 뿐입니다.

0점 : 점수가 없습니다. 패치 집합에 응답할 때의 기본 점수입니다. 일반적으로 패치셋에 대한 질문이 있거나 아직 패치셋에 대한 의견이 완전히 형성되지 않은 경우, 더 많은 시간, 테스트 또는 조사가 필요한 경우 투표로 유지됩니다.

+1 : 보기엔 좋지만, 다른 사람이 승인해야 합니다. 그렇다고 해서 언급할 내용이 없는 것은 아니며 패치 병합에 방해가 되는 문제가 없는 것은 아닙니다. 다른 사용자가 패치에서 문제를 발견할 경우 패치 소유자가 해결할 수 있는 사소한 문제에 대해서도 의견을 제시할 수 있습니다. 이러한 설명은 다른 패치 집합과 달리 후속 패치에서 해결할 수도 있습니다.

+/- 2 & +W

핵심 검토자는 기본 세트 외에 추가 투표 선택권이 있습니다. 기본 집합과 마찬가지로, 숫자는 단순한 의미 시스템에 매핑됩니다.

../_images/core-reviewer.png

-2 : 병합하지 않습니다. 이 점수는 자주 나타나지 않으며, 점수가 나타나는 경우 다음과 같은 이유가 있습니다.

  • 대부분의 경우, 일부 마감일이 지났고 새로운 릴리즈 개발이 시작될 때까지 더 이상의 변경사항이 받아들여지지 않기 때문에 패치는 으로 진행 중입니다.

  • 패치의 접근 방식에 문제가 있으며, 미팅에서 더 큰 그룹과 논의해야 합니다.

  • 제출된 패치가 중복되거나 제출된 다른 패치와 충돌합니다.

참고

-2를 투표한 사람만이 투표를 제거할 수 있으며 모든 새로운 패치 집합에서 계속됩니다.

+2 : (핵심 검토자) 보기 좋아요. 프로젝트 팀과 리포지토리에 따라 패치를 병합하려면 2 +2표가 아닌 경우 최소 1 +2표가 필요합니다.

+W: 승인되었습니다. 이제 이 패치는 리포지토리에 병합되기 전에 최종 검사 과정을 통해 실행됩니다.

리뷰 모범 사례

  • 가능하다면 코드를 테스트해 보세요! 경우에 따라 필요한 특정 하드웨어에 액세스하지 못할 수도 있지만 일반적으로 변경 사항을 테스트하거나 문서의 zuul 빌드를 확인하여 코드 또는 문서 변경만 확인하는 것이 아니라 다른 작업을 수행할 수 있어야 합니다.

다른 사용자의 변경사항을 체크아웃합니다.

Gerrit에서 다른 기고자들의 패치를 확인하고 기고자 패치를 변경 할 수도 있지만, 기고자와 변경사항에 대해서는 항상 상의한 후 작업을 시작해야 합니다.

git-review -d <change ID>

변경 ID는 Gerrit의 웹 UI에서 확인할 수 있습니다.

../_images/change-id.png

패치를 체크아웃하면 자동으로 새 분기로 전환되어 변경 작업을 수행할 수 있습니다.

체리 피킹

작업을 시작한 이후 업데이트된 변경 사항에 따라 커밋이 달라지고 해당 변경에서 최신 패치 집합을 얻어야 하는 경우, 해당 변경 사항 위에 자신의 변경 사항을 직접 선택할 수 있습니다.

git review -x <change ID>

변경 ID는 이전과 동일합니다.