{"meta":{"title":"pull request のライフサイクル全体で GitHub Copilot コードレビューを活用する","intro":"Copilot code review のための、ドラフト プル リクエストからマージまでの再現可能なワークフローを構築します。","product":"GitHub Copilot","breadcrumbs":[{"href":"/ja/copilot","title":"GitHub Copilot"},{"href":"/ja/copilot/tutorials","title":"チュートリアル"},{"href":"/ja/copilot/tutorials/use-copilot-code-review-across-the-pull-request-lifecycle","title":"プルリクエストのライフサイクル"}],"documentType":"article"},"body":"# pull request のライフサイクル全体で GitHub Copilot コードレビューを活用する\n\nCopilot code review のための、ドラフト プル リクエストからマージまでの再現可能なワークフローを構築します。\n\n## はじめに\n\nCopilot code review は、プル要求ワークフローの一部として使用する場合に最も効果的です。 このチュートリアルでは、手動レビューと自動レビューのどちらを選択するか、下書きプル要求の早期にレビューを要求し、マージ前に再レビューをトリガーするタイミングを決定する方法について説明します。\n\nまた、カスタマイズ、スキル、MCP サーバー、ランナー オプションを使用して、ニーズに合わせて Copilotのレビューを調整するタイミングについても学習します。\n\n## プル リクエストのライフサイクルに沿って作業する\n\nレビュー モデルを選択し、ドラフトとアクティブなプル要求の早期フィードバックを設定します。\n\n### チームに適したレビュー モデルを選択する\n\nCopilot code review は、プル要求のライフサイクル内の 1 つ以上のポイントで手動で実行するか、自分でトリガーするか、または自動的に実行できます。 手動レビューを使用すると、 Copilot code review の重み付けを正確に制御できます。 自動レビューにより一貫したレビュー範囲を確保でき、オープン時、ドラフト時、または新しいプッシュのたびに実行するかどうかを選択できます。\n\n| モデルの確認                                 | 最適な用途                    | なぜでしょうか                                      |\n| -------------------------------------- | ------------------------ | -------------------------------------------- |\n| 手動レビュー要求                               | 文脈依存度の高い変更、または選択的な使用     |                                              |\n| Copilotは、別のパースペクティブが必要な場合にのみトリガーできます。  |                          |                                              |\n| オープンなプル リクエストの自動レビュー                   | 幅広く一貫した対応を求めるチーム         | すべてのプル要求は、個々の習慣に頼ることなくベースライン フィードバックを受け取ります。 |\n| ドラフト プル リクエストの自動レビュー                   | より早いフィードバック ループを必要とするチーム | 作成者は、人間によるレビューを開始する前に問題を修正できます。              |\n| 新規プッシュ時の自動レビュー                         | 複数回の改訂を伴う変化の速いプルリクエスト    |                                              |\n| Copilot は、プル リクエストの変化に応じて大幅な更新を再評価します。 |                          |                                              |\n\nセットアップ手順については、 [GitHub Copilot を使ったコードレビュー](/ja/copilot/how-tos/use-copilot-agents/request-a-code-review/use-code-review) と [Configuring code review by GitHub Copilot](/ja/copilot/how-tos/copilot-on-github/set-up-copilot/configure-automatic-review) を参照してください。\n\n### ドラフトプルリクエストの早い段階で Copilot code review を使用する\n\nCopilot code reviewを使用して下書きプル要求を確認すると、チームにレビューを要求する前に、コードを早期に信頼できるチェックを行うことができます。\n\n便利な下書きワークフローは次のとおりです。\n\n1. 下書きとして pull request を開きます。\n2. Copilot code reviewの下の\\*\\*\\*\\* からレビューを要求するか、下書きプル要求の自動レビューを有効にします。\n3. 正確性、セキュリティ、明確な保守容易性の問題など、信頼度の高いフィードバックに最初に対処します。\n4. 更新をプッシュし、主要なコメントが解決されたことを確認します。\n5. pull request を人間のレビューの準備ができているとマークします。\n\nこのアプローチにより、チームは、以前にキャッチされた可能性のある明らかな問題ではなく、設計のトレードオフと製品への影響について、より多くの人間のレビュー時間を費やすことができます。\n\n## レビューの品質を調整する\n\n再レビューを要求するタイミングと、カスタマイズ、外部コンテキスト、ランナーが付加価値を追加する場所を決定することで、レビューの品質を向上させます。\n\n### マージ前に再レビューを使用する\n\n大幅な変更の後、以前のフィードバックに対処しながら、新しいリスクが導入されたかどうかを確認するための再レビューを要求します。\n\n次の場合に再レビューを要求します。\n\n* サービスまたはパッケージの境界を越えて複数のファイルを更新します。\n* セキュリティ依存またはデータ依存の動作を変更します。\n* 提案された変更の大規模なバッチを適用したため、最終的なパスが必要です。\n\nアクティブなプル要求を頻繁に更新するチームの場合、新しいプッシュで自動レビューを有効にすると、フィードバックを最新の状態に保ちながら手動の再レビュー要求を減らすことができます。\n\n### カスタマイズをワークフローに合わせる\n\nカスタマイズは、各ファイルの種類がワークフローのレビュー決定ポイントをサポートする場合に最も役立ちます。\n\n* ほとんどのプル要求に適用する必要があるリポジトリ全体のレビューの期待に対しては、 `.github/copilot-instructions.md` を使用します。\n* コードベースのさまざまな部分に異なる標準がある場合は、エージェント固有のガイダンスとパス固有のガイダンスに `.github/instructions/**/*.instructions.md` を使用します。\n* `AGENTS.md`を使用して、意図的なパターン、アーキテクチャの境界、レビューの優先順位など、関連性を向上させるリポジトリ コンテキストを提供します。\n\nこれらのファイルは、プル要求中にレビュー担当者が決定する必要のある内容に焦点を当てたままにしておきます。 完全なエンジニアリング ハンドブックに変換しないでください。\n\nカスタマイズのしくみと例の詳細については、 [カスタム命令を使用してCopilotのコードレビュー機能を引き出す](/ja/copilot/tutorials/customize-code-review) を参照してください。\n\n### エージェント スキルと MCP サーバーを使用して、特別なレビュー目標を達成する\n\nエージェントのスキルと MCP サーバーは、チームが組織固有のコンテキストに依存するレビューを必要とする場合に最も価値があります。\n\n再利用可能なレビュー ルーチンが必要な場合は、エージェント スキルを使用します。次に例を示します。\n\n* 移行プル要求に標準チェックリストを適用する。\n* モノレポで言語別またはフレームワーク別のレビュー工程を実行する。\n* 承認や課金ロジックなど、特定のリスク領域の優先順位付け。\n\nレビューがプル要求自体の外部でコンテキストを参照する必要がある場合は、MCP サーバーを使用します。次に例を示します。\n\n* プル要求の変更を問題、インシデント、またはサービスの所有権データにリンクします。\n* 内部システムからの予想されるロールアウトまたは運用コンテキストの確認。\n* 外部ドキュメント ソースに対する実装の詳細の検証。\n\nセットアップの詳細については、 [GitHub Copilot のスキルを追加する](/ja/copilot/how-tos/copilot-on-github/customize-copilot/customize-cloud-agent/add-skills) と [リポジトリの MCP サーバーを構成する](/ja/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers) を参照してください。\n\n### セルフホステッド ランナーが必要かどうかを決定する\n\n多くの場合、GitHub には標準の Copilot code review ホステッド ランナーで十分であり、セットアップは不要です。これらはデフォルトで設定されています。\n\n必要に応じ、セルフホステッド ランナーまたはより大きいランナーを検討してください。\n\n* レビュー ワークロードの負荷が高い場合のパフォーマンスが向上します。\n* 組織で必要な内部システムへのネットワーク アクセス。\n\nCopilot code reviewは、より深いコンテキスト収集やツール呼び出しなどのエージェント操作にGitHub Actionsを使用するため、ランナーが必要です。\nGitHub でホストされるランナーを利用できず、サポートされているセルフホスト オプションがどれも正しく構成されていない場合、レビューはより制限の多いモードで実行されます。\n\n計画とセットアップの詳細については、 [AUTOTITLE を](/ja/copilot/how-tos/copilot-on-github/set-up-copilot/configure-runners)参照してください。\n\n## シナリオ別の推奨ワークフロー\n\n| チーム のシナリオ                       | 推奨されるワークフロー                                                                                                                                                 |\n| ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| 頻繁にプル要求を行う小規模なチーム               | すべてのプル要求に対して自動レビューを有効にし、早期フィードバックの下書きを確認し、変更が大きい場合はマージ前に手動で再レビューを使用します。                                                                                     |\n| 複数の技術スタックが混在する大規模なモノレポ          | 自動レビューを有効にし、新しいプッシュをレビューし、各主要領域にパスごとの指示を追加し、繰り返し発生するレビュー パターンにはスキルを使用します。                                                                                   |\n| セキュリティに依存するコードベースまたは規制されたコードベース | 下書きの pull request レビューと、マージ前に必要な再レビューを使用し、リポジトリ全体のセキュリティの期待を`.github/copilot-instructions.md`に保ち、GitHubの外部に格納されているインシデントまたはコンプライアンス コンテキストに MCP サーバーを使用します。 |\n| 内部プラットフォームの依存関係を持つチーム           | 自動レビューから始めて、セルフホステッド ランナーと MCP コンテキストを追加するのは、有用なレビュー フィードバックに内部システム アクセスが必要な場合のみです。                                                                         |\n\n## 次のステップ\n\n* レビュー作業やエージェント機能など、より広範な概念については、 [GitHub Copilotによるコードレビューについて](/ja/copilot/concepts/agents/code-review) を参照してください。\n* 特定のリポジトリの自動レビュー品質を調整するには、 [を使用して最適化されたレビュー プロセスを構築する Copilot](/ja/copilot/tutorials/optimize-code-reviews) を参照してください。\n* 除外されるファイルの種類とその他の制限については、 [GitHub Copilot code review から除外されたファイル](/ja/copilot/reference/review-excluded-files) を参照してください。"}