コードレビューをしよう
ベースのブランチにマージする前に検閲を通す
誰にレビュー(検閲)してもらうのが適切か?
それは、現場によってまちまちです。
コードのクオリティを担保する、テックリーダーが存在すれば、その人が常に検閲することもありますし、ただのHTMLでそんな大げさなことでなければ「自分以外の誰かであればOK」というようなこともあります。
弊社では、状況に合わせて話し合いで決めています。
【検閲担当】レビューの開始・更新
コメントしたい箇所をコミットやファイルから特定します
コメントを追加したい場所を選びます
レビューを指摘したい行にマウスカーソルを持っていくと現れる「+」か、または行を特定しない場合は、右上の「コメント」ボタンを押します。
「+」ボタンは、ドラッグすることで、複数行を選択することもできます。
コメントを追加します
コメントを書き、「Start a review」 ボタンを押してコメントを保存します。
この状態では、まだ自分のレビューは開始されていません。つまり、自分以外には見えていません。
「Finish your review」ボタンでレビューを保存します
必要な分だけコメントを追加したら、レビューを保存して開始します。
レビューの状態を選択して、「Submit review」ボタンを押してください。
大概の場合、Request Changes で始まり、Approve で終わります。
Comment
レビューの状態は変えないで、コメントはさむだけ
Approve
すべて問題なく、僕のレビューは完了した!
Request Changes
どこかしら直してからでないとマージはできないと判断している
【修正担当】修正を再プッシュ
自分に修正が求められていることを確認
プルリクエストの中に現れる、これがレビューのログです。
特に、矢印の部分、赤マルのアイコンのログはその時点で「Request changes」で、修正が必須と求められています。
マージボタン付近にも、誰かのレビューで指摘された問題が解決されていないというようなメッセージが赤字で出ます。
修正を再プッシュ
問題を解決する修正をして、ブランチを再プッシュをします。
レビュー後にコミットが追加されたことが、分かります。
修正したことを報告
レビューへのコメントを使って、修正が完了したことを、報告します。
コミットIDを添えることが望ましいです。
特に修正箇所が多くなる場合は、コミットIDを貼るようにしましょう。
また、右のReviewers の項目から、以下のボタンを押して、任意のユーザーに再レビューをお願いする専用のメンションを飛ばすこともできます。
【検閲担当】レビュー完了!
すべての修正が終わったことを確認したら、自身のレビュー状態を Approve に変更しましょう
マージ
関係者全員のレビューが Approve になったときの表示は以下の通りです。
赤い字が消えました。
「Merge pull request」→ 「Confirm merge」と、続けてボタンを押して、プルリクエストをマージして完了です。
リモートのブランチを削除するボタンです。弊社ではなるべく消すようにしています。
ほんとうに?ホントにやる?と、赤いボタンで警告されるので、間違うことはありませんが、強制マージはできるので、注意してください