今日の英語表現 15/30 · ステージ:レビューを受ける・返答する。 例文はすべてこの記事のために作成されたものです。実際のリポジトリのコメントをそのまま載せたものではなく、人物と番号は例です。
目次
一目でわかる
| 表現 | LGTM / LGTM with one nit / /lgtm |
| 意味 | 良さそうです(承認します) / ささいな点を除けば良いです |
| 使用する場面 | レビューの結論、Prowコマンド |
| 丁寧さ | 中立。レビューの結論を伝える言葉です |
1. 意味とニュアンス
LGTMはLooks Good To Meの略です。LLVMの用語集では、LGTMを「レビュアーがそのパッチをコミットしても問題ないとみなしている」という意味で説明しており、LLVMのコードレビュー文書には、コミットの承認は通常LGTMが含まれるメッセージで示されると記載されています。同じ文書では、確信を持てないレビュアーに対して「LGTM, but please wait for (他のレビュアー)」のように条件を付けた承認を行うよう勧めています。
to meという表現に注目します。「自分にとっては良く見える」という意味であるため、他のレビュアーやメンテナーの判断が他に残っている場合があります。そのため、1回のLGTMが直ちにマージを意味するわけではありません。
KubernetesとProwの/lgtm、/approve Kubernetes系リポジトリでは、コメントにコマンドを入力するとProwボットがラベルを付与します。KubernetesのOWNERSドキュメントによると、以下のようになります。
/lgtm:レビュアーがコードの品質、正確性、スタイルを確認し、問題ないと判断したことを示します。ボットがlgtmラベルを付与します。GitHub組織のメンバーであればレビュアーになれますが、 PRの作成者は自身のPRに/lgtmを付けることはできません。 取り消しは/lgtm cancelです。/approve:依存関係、互換性、APIやフラグの定義などのより幅広い承認基準を承認者が確認したことを示します。該当ディレクトリのOWNERSファイルに名前がある人のみ使用でき、必要なOWNERSからの承認が集まるとapprovedラベルが付きます。- マージの自動化は通常、
lgtmとapprovedの2つのラベルの両方が揃っており、do-not-merge/holdのようなブロックするラベルがない場合に実行されます。
そのため、Kubernetes系リポジトリにおいて「LGTMをもらった」という言葉と「マージ可能である」という言葉は異なります。承認者による個別の/approveが必要になる場合があります。
2. 例文
状況1:レビュアーの条件付き承認
LGTM with one nit. Feel free to merge after fixing the typo in the comment.
状況2:Prowを使用しているリポジトリ
Thanks for the quick turnaround. The changes look good to me.
/lgtm
quick turnaroundは「迅速な対応」という意味で、レビューにすぐ対応してくれた作成者を称賛する言葉です。
状況3:作成者がLGTMを受け取った後
Thanks for the review! I've fixed the nit. Do I need an approval from someone in OWNERS, or is this good to go?
good to goは「進めてよい、問題ない」という意味の口語表現です。
3. 似た表現との違い
- Approve(GitHubのレビュー機能) GitHubのApproveボタンは、リポジトリの設定によってはマージの条件になることがあります。Prowの/approveとは異なる仕組みです。
- Looks good overall, but ... 「全体的には良いが」という意味で、まだ承認ではなく修正すべき点が残っていることを示します。
- SGTM(Sounds Good To Me) コードではなく、提案や計画に同意する際に使用します。
4. 韓国人がよく犯すミス
- 作成者が自身のPRに /lgtmを付けること。 ルール上許可されておらず、ボットによって拒否されます。
- 修正した文:Thanks! Could someone from OWNERS take a look for approval?
- Thank you very very much for your LGTM!! 感謝することは良いことですが、過度な強調や感嘆符はビジネスのやり取りにおいて不自然です。
- 修正した文:Thanks for the review!
- LGTMを受け取るやいなや 「Please merge」と催促すること。 他のレビュアーや承認者の判断が残っている場合があります。
- 修正した文:Thanks! Is there anything else needed before this can be merged?
5. 一行練習
レビュアーの立場として、以下の内容をコメントとして記述してください。
全体的に良いです。テスト名のタイポを1箇所だけ修正していただければ問題ありません。
模範解答
LGTM with one nit: there's a typo in the test name.
LGTM with one nitという言葉の中に「承認」と「1つのささいな修正」が一緒に含まれています。何がその1つの修正であるかは、コロンの後に短く記述します。
Titiの一言 LGTMは「自分にとっては」良いという意味です。マージまでに何が残っているかはリポジトリのルールを確認します。
参考
- Kubernetes貢献ガイド、OWNERS files(/lgtm, /approve): https://github.com/kubernetes/community/blob/master/contributors/guide/owners.md
- LLVM Lexicon、「LGTM」: https://llvm.org/docs/Lexicon.html
- LLVM Code-Review Policy and Practices: https://llvm.org/docs/CodeReview.html