マージリクエストのレビュー
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
マージリクエストのレビュープロセスにより、提案された変更がマージされる前に、専門家が確認することが保証されます。レビュアーはマージリクエストにレビューコメントを追加し、作成者がGitLab UIから直接適用できる変更を提案します。
レビュアーは、マージリクエストをレビューするために、これらのツールのいずれかを使用できます:
- GitLabユーザーインターフェース。
- Visual Studio Codeと、GitLab for VS Code extension。
- ターミナルウィンドウと、GitLab CLI。
承認は、マージリクエストが完全に準備できたときにのみマージされることを保証するいくつかのマージチェックの1つです。プロジェクトの設定によっては、レビュアーは変更の要求を設定することで、マージリクエストのマージをブロックすることもできます。
PremiumとUltimateでは、レビュアーをアサインするドロワーが提供され、承認ルールを満たすレビュアーを見つけるための詳細情報が表示されます:
定義されたレビューフローに従うことで、各レビュアーはマージリクエストを承認するか却下するかを決定します。右サイドバーには、レビュアーのリストと、(レビューフローに従った場合の)レビューステータスが表示されます:
- レビューはまだ開始されていません。
- レビューが進行中です。
- レビュー済みで承認済みです。
- レビュー済みで、変更が要求され、変更が加えられるまでこのマージリクエストをブロックしました。このブロックはバイパスすることができます。
概要については、マージリクエストのレビュー動画をご覧ください。
マージリクエストをレビューする
merge request homepageには、進行中のマージリクエストと、あなたからのレビューを待っているマージリクエストが表示されます。レビューする必要があるマージリクエストは、リクエストしたレビューカテゴリにあります。注意が必要なすべてのマージリクエストを表示するには、以下のいずれかの方法を使用してください:
- Shift+m キーボードショートカットを押します。
- 左サイドバーで、マージリクエスト ( ) を選択します。
- トップバーで検索または移動先を選択し、ドロップダウンリストから現在作業中のマージリクエストを選択します。
マージリクエストのレビュー状態を表示する
これを行うには、次の手順を実行します:
上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
左側のサイドバーで、コード > マージリクエストを選択して、マージリクエストを見つけます。
マージリクエストのタイトルを選択して表示します。
マージリクエストウィジェットまでスクロールして、マージリクエストのマージ可能性と承認状態を確認します。たとえば、必要な承認がない場合、このマージリクエストはブロックされます。
レビューをリクエストする
変更の準備が完了したら、レビューをリクエストします。マージリクエストにレビュアーを割り当てるには、任意のテキストフィールドで/assign_reviewerクイックアクションを使用するか、または:
- 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
- 左側のサイドバーで、コード > マージリクエストを選択して、マージリクエストを見つけます。
- マージリクエストのタイトルを選択して表示します。
- 名前でレビュアーを見つけるには: 右サイドバーのレビュアーセクションで、編集を選択します。
- PremiumとUltimateで承認ルールを満たすレビュアーを見つけるには:
- 右サイドバーのレビュアーセクションで、アサインを選択してレビュアーをアサインするドロワーを開きます。
- 各承認ルールについて、編集を選択し、その承認ルールを満たすレビュアーを見つけます。
GitLabは、マージリクエストをユーザーのレビューリクエストに追加します。
承認ルールを満たすレビュアーを見つける
- プラン: Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
GitLab PremiumとUltimateは、マージリクエストに最適なレビュアーをより迅速に見つけるのに役立ちます。レビュアーを割り当てるドロワーを使用して、レビュアーのリストをフィルタリングします。マージリクエストで変更されたファイルのコードオーナーと、プロジェクトの承認ルールを満たすユーザーを確認します。
この例では、マージリクエストには3つのコードオーナーの承認が必要ですが、これまでのところ承認はありません。
マージリクエストで適格な承認者を割り当てるには:
- レビュアーセクションで、アサインを選択します。
- オプションの承認ルールまたはコードオーナーを表示するには、オプションの承認ルール( )を選択して表示します。
- 必要なレビュアータイプの横にある編集を選択します。
- コードオーナーには、そのファイルタイプのコードオーナーのみが表示されます。
- 承認ルールには、その承認ルールを満たすユーザーのみが表示されます。
- 希望するレビュアーを選択します。(PremiumとUltimateでは、複数のレビュアーを選択できます。)
- 必要なコードオーナーおよび承認ルール項目ごとに繰り返します。
- レビュアーを選択したら、右上にある閉じる ( ) を選択してレビュアーをアサインするドロワーを非表示にします。
レビューを再リクエストする
レビュアーがマージリクエストのレビューを完了した後、マージリクエストの作成者はレビュアーに新しいレビューを要求することができます。これを行うには、マージリクエストのテキストフィールドで/request_review @userクイックアクションを使用するか、次のようにします。
- 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
- 左側のサイドバーで、コード > マージリクエストを選択して、マージリクエストを見つけます。
- マージリクエストのタイトルを選択して表示します。
- マージリクエストで右側のサイドバーを折りたたんでいる場合は、 サイドバーを展開を選択して展開します。
- レビュアーセクションで、レビュアーの名前の横にあるレビューを再リクエストアイコン( )を選択します。
GitLabは、レビュアーの新しいTo Doアイテムを作成し、通知メールを送信します。
レビューを開始する
マージリクエストをレビューする際は、個別のコメントを残すのではなく、レビュープロセスに従ってください。レビューを開始を選択すると、右サイドバーのレビュアーセクションで、ステータスがレビュー待ち ( ) からレビュアーがレビューを開始 ( ) に更新されます。
マージリクエストのレビューを開始するには:
次のいずれかの操作を行います:
- Shift+rを押して、マージリクエストページに移動します。
- 右上隅で、マージリクエスト ( ) を選択します。
マージリクエストを見つけ、マージリクエストのタイトルを選択して表示します。
マージリクエストの説明とコメントを読んで、マージリクエストについて学びます。
変更を選択して、提案された変更の差分を表示します。変更ページの詳細については、マージリクエストの変更を参照してください。
必要に応じて複数行または1行の変更を提案します。最初のレビューコメントを保存する準備ができたら、レビューを開始を選択して:
レビューを開始ではなく今すぐコメントを追加を選択すると、GitLabはすぐにコメントを公開します。
変更タブまたは概要タブで、レビューコメントの作成を続けます。レビューに追加するを選択すると、レビューを提出するまで未公開のままになります:
次に、レビューを提出します。
コメントでスレッドを解決するか再オープンする
コメントは、コメントスレッドを解決するか再オープンすることもできます。コメントに返信するときにスレッドを解決するか再オープンするには:
- コメントテキストエリアに、コメントを書き込みます。
- スレッドを解決にするまたはスレッドを再オープンを選択またはクリアします。
- 今すぐコメントを追加またはレビューの行数を増やすを選択します。
保留中のコメントには、遅延したアクションに関する情報が表示されます。これらのアクションは、レビューを提出したときに実行されます。
レビューを送信する
レビューを提出すると、GitLabは:
- レビューのコメントを公開します。
- レビューコメントを添付して、マージリクエストのすべての通知可能なユーザーに1通のメールを送信します。このメールに返信すると、マージリクエストに新しいコメントが作成されます。
- レビューコメントに追加したすべてのクイックアクションを実行します。
- あなたのレビューの結果を表示します。
マージリクエストのレビューをすばやく提出するには:
- マージリクエストウィジェットに移動し、承認するを選択します。マージリクエストはあなたによっても承認されます。
- レビュー以外のコメントのテキストで、
/submit_reviewクイックアクションを使用します。
レビューを提出するときに、レビューコメントを読み、編集するには:
右上隅であなたのレビューを選択し、レビューの詳細を表示します:
保留中のコメントをレビューします。必要に応じて編集します。
あなたのレビューの結果を選択します。
- 承認: フィードバックを残して、変更を承認します。
- コメント: 明示的な承認や変更リクエストなしで、一般的なフィードバックを残します。
- 変更をリクエスト: 作成者がフィードバックに対応するまで、マージリクエストがマージされないようにブロックします。
オプション。あなたのレビューの要約を作成します。PremiumとUltimateユーザーはサマリーを追加 ( ) を選択して、サマリーを作成できます。実行したいクイックアクションを含めます。
保留中のレビューを破棄する
レビューを破棄すると、未公開のコメントは削除され、それらを復元することはできません。これを行うには、次の手順を実行します:
変更をリクエストするときにマージを防ぐ
- プラン: Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
レビュアーが変更をリクエストすると、マージリクエストはマージされなくなります。この場合、マージリクエストのレポートエリアにChange requests must be approved by the requesting userというメッセージが表示されます。マージリクエストのブロックを解除するには、変更をリクエストしたレビュー担当者がマージリクエストを再レビューして承認する必要があります。
変更リクエストを削除する
以前に変更をリクエストした場合は、変更リクエストを削除できます。次の両方が当てはまる場合は、これが必要になる場合があります。
- マージリクエストを承認できなくなった。
- 変更リクエストをキャンセルしたいが、新しいレビューを送信したくない。
新しいレビューを送信せずに変更リクエストを削除するには:
上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
左側のサイドバーで、コード > マージリクエストを選択して、マージリクエストを見つけます。
マージリクエストのタイトルを選択して表示します。
マージリクエストの概要で、マージリクエストレポート領域までスクロールします。
Change requests must be approved by the requesting userの横にある削除を選択します:
変更のリクエストをバイパスする
変更をリクエストしたユーザーが再レビューまたは承認できない場合、マージリクエストをマージする権限を持つ別のユーザーがこのチェックを上書きできます。
上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
左側のサイドバーで、コード > マージリクエストを選択して、マージリクエストを見つけます。
マージリクエストのタイトルを選択して表示します。
マージリクエストの概要で、マージリクエストレポート領域までスクロールします。
Change requests must be approved by the requesting userの横にあるバイパスを選択します:
マージレポート領域に
Merge with caution: Override addedが表示されます。ユーザーがバイパスしたチェックを確認するには、マージチェックを展開( )を選択し、警告( )アイコンが含まれているチェックを見つけます。この例では、作成者がChange requests must be approved by the requesting userをバイパスするしました:
マージリクエストの変更をダウンロードする
マージリクエストからの変更をダウンロードして、差分ファイルまたはパッチファイルとして保存できます。
関連機能
マージリクエストは、次の機能に関連しています。
- Cherry-pickの変更: GitLab UIで、マージされたマージリクエストまたはコミットでCherry-pickを選択して、cherry-pickします。
- 変更を比較: マージリクエストに含まれる変更の差分を表示およびダウンロードします。
- 早送りマージリクエスト: 線形のGit履歴のための機能で、マージコミットを作成せずにマージリクエストを受け入れる方法です
- 変更を導入したマージリクエストを見つける: コミット詳細ページを表示すると、GitLabはそのコミットを含むマージリクエストにリンクします。
- マージリクエストバージョン: マージリクエストの差分の異なるバージョンを選択して比較する
- 競合の解決: GitLabは、GitLab UIで特定のマージリクエストの競合を解決するオプションを提供できます。
- 変更をリバートする: マージリクエストから任意のコミットの変更を取り消します。
- キーボードショートカット: キーボードコマンドを使用して、マージリクエストの特定の部分にアクセスして変更します。
- バリューストリーム分析: チームがソフトウェア開発ライフサイクルで最も時間を費やす場所を特定するために、主要なマージリクエストのステップ (
reviewedやapprovedなど) を追跡するします。この情報は、グループやプロジェクトのマージリクエストワークフローを最適化し、デベロッパーの生産性を向上させるための実用的なインサイトを明らかにするのに役立ちます。ブログ記事でバリューストリーム分析を使用してMRレビュー時間を削減する方法について詳しくお読みください。









