はじめに
Copilotコード レビュー は、任意の言語で記述されたコードをレビューし、フィードバックを提供します。 コードを複数の角度からレビューして問題を特定し、修正を提案します。 2 回のクリックで、推奨される変更を適用できます。
この記事では、Copilotコード レビュー の概要について説明します。 Copilot からコード レビューを要求する方法については、 GitHub Copilot を使ったコードレビュー を参照してください。
可用性
Copilotコード レビュー は、以下でサポートされています。
- GitHub.com
- GitHub Mobile
- VS Code
- Visual Studio
- Xcode
- JetBrains IDE
Copilotコード レビュー は、以下のプランで利用可能なプレミアム機能です。
- データ 変数.copilot.copilot_pro_short %}
- Copilot Pro+
- Copilot 事業
- Copilot Enterprise
Copilot プランを確認してください。
組織から Copilot を受け取った場合、組織は、Copilot ポリシー設定で、Copilotコード レビュー オプションを有効にする必要があります。 これは、GitHub.com または GitHub Mobile のレビューに適用されます。 「組織内の GitHub Copilot のポリシーと機能の管理」を参照してください。
Copilotコード レビュー は Copilot ライセンスなしで使用することはできません。
**Copilot のライセンスを持たない**組織メンバーは、Copilotコード レビュー をGitHub.comで使用できます。 エンタープライズ管理者または組織の所有者が有効にする必要があります。 この機能は、**Copilot 事業** および **Copilot Enterprise** プランに加入している組織が利用できます。
ライセンスのないユーザーのコード レビューを有効にする
Copilot ライセンスを持たない組織メンバーが Copilotコード レビュー を使用できるようにするには、次の 2 つのポリシーを有効にする必要があります。
-
**Premium リクエストの有料利用**。 最初にこのポリシーを有効にします。 これにより、エンタープライズまたは組織には、Copilotコード レビュー Premium 要求の使用量が課金されます。 -
**Copilot ライセンスを持たないメンバーがCopilotコード レビュー を GitHub.com で使用できるようにします**。 このサブポリシーは、ライセンスのないユーザーに対して Copilotコード レビュー を有効にします。
2 番目のポリシーには、次の特性があります。
- この機能は既定で無効になっています。
- このポリシーをエンタープライズ レベルで設定すると、表示されますが、組織レベルでは 編集できなくなります 。
- ポリシーは 最も制限が厳しい。 Copilotコード レビュー は、ポリシーを明示的に有効にしたリポジトリでのみ使用できます。
ライセンスを持たないユーザーに対する動作
両方のポリシーが有効になっている場合、Copilot ライセンスが付与されていないユーザーは、組織のリポジトリ内のプル リクエストの Copilotコード レビュー からレビューを要求できます。
自動コード レビューが有効になっているリポジトリでは、Copilot はすべてのプル要求を自動的に確認します。 これは、作成者が Copilot ライセンスを持っているかどうかにかかわらず発生します。
ライセンスがないユーザーに対しては、Copilotコード レビュー を IDE で利用することはできません。
除外されたファイル
一部のファイルの種類はCopilotコード レビュー から除外されます。
- 依存関係管理ファイル (package.json や Gemfile.lock など)
- ログ ファイル
- SVG ファイル
これらのファイルの種類をプル要求に含める場合、Copilotコード レビュー はファイルを確認しません。
詳しくは、「GitHub Copilot コード レビュー から除外されるファイル」をご覧ください。
Copilotのコードレビュー用ツール
メモ
[AUTOTITLE](/free-pro-team@latest/site-policy/github-terms/github-pre-release-license-terms)は、プレビュー機能の使用に適用されます。
- Copilotコード レビュー には、パブリック プレビュー に含まれるいくつかの新しいツールがあり、変更される可能性があります。
Copilotコード レビュー では、完全なproject コンテキスト収集を使用して、より具体的で正確でコンテキストに対応したコード レビューを提供します。 この機能は、リポジトリ全体を分析して、コード変更のコンテキストをより深く理解します。 完全なプロジェクトコンテキスト収集は一般的に利用可能であり、Copilot Pro プランまたは Copilot Pro+ プランに対して自動的に有効になります。
Copilotコード レビュー には、パブリック プレビュー に含まれる追加の新しいツールが含まれています。
-
**CodeQL、ESLint および PMD などの静的分析ツールをサポート**。 これにより、セキュリティと品質に関して、より高いシグナルで一貫した結果が得られます。 -
**Copilotコーディングエージェント に提案を渡す機能**。 これにより、推奨される修正が適用されたブランチに対する新しいプル要求の作成が自動化されます。
これらのツールは、Copilot Pro プランまたは Copilot Pro+ プランでも自動的に有効になります。
組織から Copilot サブスクリプションを取得した場合、組織またはエンタープライズの所有者がプレビュー機能の使用を有効にしている場合にのみ、GitHub Web サイト上の パブリック プレビュー に参加できます。 「組織内の GitHub Copilot のポリシーと機能の管理 および 企業での GitHub Copilot のポリシーと機能の管理 を参照してください。
Copilot コード レビューのツール を使用するために、組織またはエンタープライズで code scanning および GitHub Actions を有効にする必要はありません。
GitHub Actions を使用できないまたは、Copilotコード レビュー が使用する Actions ワークフローが失敗した場合でも、レビューは生成されます。 ただし、Copilot コード レビューのツール によって提供される追加機能は含まれません。
メモ
パブリック プレビュー には、新しい Copilot コード レビューのツール に使用できる無料のアクション時間が含まれます。
コードレビューでツールを実行するための GitHub Actions ランナーの使用
Copilotコード レビュー では、GitHub Actions を使用して、Copilot コード レビューのツール を実行します。これには、完全なプロジェクトコンテキストの収集や、パブリック プレビュー での追加ツールの使用が含まれます。 既定では、Copilotコード レビュー は GitHub ホスト付きランナーを使用します。
組織で GitHub ホストランナーが無効になっている場合、新しい Copilot コード レビューのツール は使用できません。 この場合、コード レビューは、より限定的なレビューにフォールバックします。
このような状況の組織では、セルフホステッド ランナーを使用できます。 詳しくは、「GitHub Copilot コードレビューのためのセルフホステッドランナーの構成」をご覧ください。
コード レビューの月間クォータ
Copilot が IDE でプル要求を確認したり、コードをレビューしたりするたびに、Copilot Premium 要求の月間クォータが 1 つ減ります。
すべての新しい pull request に対して Copilot からコード レビューを自動的に要求するようにリポジトリが構成されている場合、Premium 要求の使用量は pull request 作成者のクォータに適用されます。
GitHub Actions またはボットが、プル リクエストを作成する場合、使用量は、次に適用されます。
- ワークフローをトリガーしたユーザー (そのユーザーを識別できる場合)。
- 指定された請求管理者。
クォータに達するとどうなりますか
毎月のクォータに達すると、クォータがリセットされるまで、 Copilot からコード レビューを受け取ることができません。 クォータがリセットされる前にコードレビューを引き続き使用するには、Copilotプランをアップグレードするか、追加のプレミアムリクエストを有効にする必要があります。
Copilot ライセンスを持たないユーザーのクォータ
Copilot ライセンスが付与されていないユーザーには、月次 Premium 要求クォータはありません。 このようなユーザーに対して Copilotコード レビュー が有効な場合、生成されるすべての Premium 要求は、支払われた超過分の使用量として組織または企業に直接課金されます。 これは、手動で要求されたレビューと自動コード レビューの両方に適用されます。
ライセンスのないユーザーによって生成された Premium 要求は、Copilot プラン クォータに起因しません。 課金レポートと Premium 要求分析では、超過分の使用量として表示されます。 Copilot ライセンスが付与されているユーザーは、割り当てられたプラン クォータから引き続き Premium 要求を使用します。
モデルの使用法
Copilotコード レビューは、入念に調整されたモデル、プロンプト、システム動作の組み合わせを使って、さまざまなコードベースについての一貫した高品質のフィードバックを提供する、専用の製品です。 モデルを変更すると、レビュー コメントの信頼性、ユーザー エクスペリエンス、品質が損なわれる可能性があるため、モデルの切り替えはサポートされていません。
メモ
Copilotコード レビューは、organization の [Models] 設定ページで有効にされていないモデルを使う場合があります。 [モデル] 設定ページでは、Copilot チャット のみが制御されます。
Copilotコード レビュー は一般公開されているため、すべてのモデルの使用は一般公開の条件に従います。 「組織内の GitHub Copilot のポリシーと機能の管理」をご覧ください。
Copilot コード レビューを検証する
Copilot は、プル リクエスト内のすべての問題や課題を検出するとは限りません。 時には間違いを犯すことがあります。 Copilotのフィードバックを慎重に検証してください。 Copilotのフィードバックは、人間のレビューで補完します。
詳細については、「GitHub Copilot コード レビューの責任ある使用」を参照してください。
Copilot のリポジトリに関する知識を強化する
Copilot がリポジトリ内のコード、使用するツール、およびコーディングの標準とプラクティスについて知れば知るほど、レビューの精度と有用性が高くなります。 Copilotのリポジトリに関する知識を強化するには、2 つの方法があります。
カスタム手順
これらは、リポジトリに 1 つ以上のファイルとして書き込んで格納する、短い自然言語ステートメントです。 GitHub の組織の所有者である場合は、組織の設定でカスタム指示を定義することもできます。 詳しくは、「GitHub Copilotの応答をカスタマイズする方法」をご覧ください。
Copilot メモリ (パブリック プレビュー)
Copilot Pro または Copilot Pro+ プランがある場合は、Copilot メモリ を有効にすることができます。 これにより、 Copilot は、リポジトリについて学習した有用な詳細を格納できます。 Copilot は、そのリポジトリ内のプル リクエストを確認するときにこの情報を使用できます。 詳しくは、「GitHub Copilotのエージェント記憶について」をご覧ください。
プル リクエストの自動レビューについて
既定では、Copilot は、プル リクエストに割り当てた場合にのみそのプル リクエストをレビューします。 ただし、自動レビューは構成できます。
- Copilot Pro または Copilot Pro+ プランの個々のユーザーは、 Copilot を構成して、作成したすべてのプル要求を自動的に確認できます。
-
**Repository 所有者** は、 Copilot を構成して、Copilot にaccessを持つユーザーによって作成されたすべてのプル要求をリポジトリ内で自動的に確認できます。 -
**組織の所有者** が、Copilot を構成すると、Copilot ユーザーによってプル リクエストが作成された組織内の一部またはすべてのリポジトリのプル リクエストを自動的にレビューすることができます。
プル リクエスト自動レビューをトリガーする
自動コード レビューのトリガーは、構成設定によって異なります。
- 基本設定:
- "Open" プル リクエストとしてプル リクエストを作成する場合。
- 初めて "Draft" pull request を "Open" に切り替えます。
- 新しいプッシュを確認します。
- 新しいコミットをプル リクエストにプッシュするたび。
- 下書きの pull request を確認します。
- "Open" に切り替える前に、プルリクエストは下書きの段階で自動的にレビューされます。
完全な手順については、 GitHub Copilot による自動コード レビューの構成 を参照してください。
メモ
Copilot がプルリクエストへの各プッシュをレビューするように設定されていない限り、プルリクエストは1回だけレビューされます。 pull request が自動的にレビューされた後で変更を加え、あなたが Copilot による再レビューを希望する場合は、手動でこれを要求することができます。 [レビュー担当者] メニューの Copilot 名の横にある [] ボタンをクリックします。
リポジトリ全体の詳細なコード品質フィードバックの取得
GitHub Copilot コード レビュー は pull request でコードをレビューし、フィードバックを提供します。 リポジトリ全体の信頼性と保守容易性に関する実用的なフィードバックが必要な場合は、GitHub Code Quality を有効にします。 「GitHubのコード品質について」を参照してください。
参考資料
-
[AUTOTITLE](/copilot/how-tos/agents/copilot-code-review/using-copilot-code-review)