2. What is Gerrit? Google이만든 Code ReviewTool Pre-Commit Code Review Web 기반 Git전용 툴 JAVA기반 Apache License 2.0
3. Gerrit history Google은 Mondrian을 개발해서 Code Review시스템으로 사내용으로 사용 함 Guido van Rossum이 Mondrian을 변형해서 Rietveld를 OpenSource로 개발함 Android Project가 Git를 VCS으로 채택하고 그에 맞게 Rietveld를 수정해서 Gerrit이 탄생함
4. Gerrit workflow Code Commit Gerrit에 등록 Patch 작성 Good Change? Need Patch? Reject 하기 Commit Abandon Git에 Merge
5. Gerrit rule +1, -1 점은 Verified 포인트 +2,-2 점은 Code Review 포인트 +2 포인트를 받아야 만 Summit 가능 -1,-2 포인트를 받으면 Summit 불가능 사용자는 1개 이상의 그룹에 속함 +1 권한과 +2권한이 분리됨 Reviewer는 Committer가 지정 가능 특정 그룹은 모든 Commit에 Review가능함
6. Committer Scenario Local Repo에서 코드를 수정한다 이때 for-gerrit branch를 만들면 편하다 Gerrit으로 Commit을 Push한다 Review를 기다린다. +2를 받았다면 Summit을 눌러서 Git에 Merge한다. -1, -2를받았다면 코드를 수정한 후에 다시 Gerrit으로 Push한다. 자동으로 PatchSet이 등록이 됨
7. Tester Scenario E-mail로 신규 Review가 올라온 것을 확인 Commit을 Cherry-pick으로 자신의 Local Repo로 Merge 한다. 버그가 고쳐졌는지, 기능이 잘 도는지 Test한다. 문제가 있다면 -1을 주고, 이유를 적는다 잘 동작 한다면 +1을 준다
8. Reviewer Scenario E-mail로 신규 Review가 올라온 것을 확인 Tester가 +1를 줬다면, Review를 시작한다 코드에 문제가 있다면 -2를 준다 코드에 큰 문제가 없다면 +2를 준다