Gerrit メモ
Gerritはレビューのためのツールです。Javaで書かれてます。中身にJavaで書かれたGitサーバまで内蔵していて、java
コマンドがあれば動くという簡単設計。Androidが使ってる。
Gitで使うの前提です。Gitを使ってないなら、それは何かがすでに間違ってるのでそこから見直しましょう。
- GerritはGitのリモートレポジトリとして動いて、Pushしたブランチの各コミットからレビューを生成する。
- 一杯コミットがあるブランチをPushすると一杯レビューができて (´・ω・`)ガッカリ… することに。
- じゃあコミットいっぱいでブランチをreviewに出すときはどうすんのよ?
git rebase -i
やgit merge --squash
でコミットを1つにしてそのコミットだけがあるブランチをPushする。
- なんでこんなことに…
- 多分、マスターが追いやすくなるっていうメリットがあるから。デメリットはSquashするから細い変更は追えなくなる。
-
レビューが通ると自動で
master
ブランチにレビューに送ったブランチマージしてくれる。マージに失敗したらマージできるブランチを作りなおして再チャレンジ(だったと思う)。 Change-ID
とは。レビューでリジェクトされて再チャレンジするときに前のコミットと再チャレンジすコミットが同じレビューかどうか識別する為のID。ローカルのレポジトリにHookを入れて勝手にIDをコミット時に生成するようにする。
あまりGerritについて日本語で書かれてる情報がないので簡単にまとめました。 まじめに使ってないので嘘があるかもしれません。