メモ
GitHub Code Quality は現在 パブリック プレビュー にあり、変更される可能性があります。 パブリック プレビュー の間、Code Quality は課金されませんが、Code Quality スキャンでは GitHub Actions 分が消費されます。
イントロダクション
このチュートリアルでは、GitHub Code Quality をプルリクエストで利用して、変更によって誤って導入される可能性があるコード品質の問題を特定する方法と、Copilotの自動修正 と Copilotコーディングエージェント を使用してコード品質の課題に対処して解決する方法について説明します。
問題を早期にキャッチする利点
コード品質の問題を早期にキャッチすると、チームのコードベースが整い続けます。 GitHub Code Quality は、コードに対して次の項目をチェックします。
-
**信頼性**: たとえば、ロジック エラー、安全でないエラー処理、アプリのクラッシュや予期しない動作の原因となる競合状態などです。 この種の問題に早期に対処することで、ソフトウェアの堅牢性が高く、ユーザーにとって信頼性が高まります。 -
**保守容易性**: たとえば、重複したコード、過度に複雑なロジック、未使用の変数、コーディングのベスト プラクティス違反などです。 これらの問題を修正すると、コードがよりクリーンで読みやすくなり、将来の変更がより速く、リスクが低くなります。
1. GitHub Code Quality が pull requset でどのように動作するかを理解する
pull request を開くと、GitHub Code Quality は CodeQL を使用して、上記のような品質の問題に対する変更を自動的にスキャンします。
CodeQL スキャンの結果は、プル要求のコメントとして報告され、github-code-quality[bot] によって残されます。 各コメントは、変更で検出された特定のコード品質の問題に対応し、推奨される自動修正が付属しています。
コメントには重大度 (エラー、 警告、 注意) のラベルが付いているため、対処に最も重要な結果を確認できます。
2. 重大度に基づいて修正プログラムに優先順位を付ける
コメントをスキャンし、最も重大度レベルが高い結果 ("エラー") を最初に特定します。
"エラー" の結果がない場合は、次の重大度レベル ("警告") の結果を探します。
重大度が高い結果は、コードベースで信頼性や保守容易性の問題が発生する可能性が高い、より深刻なコード品質の問題を示します。 重大度の高い結果を解決することで、チームのコードの品質を維持するために最も影響の大きい作業を行います。
メモ
リポジトリ管理者は、プル要求に特定の重大度レベル以上の Code Quality 個の結果が含まれている場合に、プル要求のマージを ブロック するコード品質ゲートを設定している可能性があります。 「pull request でのブロックの解決」を参照してください。
3. Copilotの自動修正 または Copilotコーディングエージェント を活用して結果を修正する
Copilotの自動修正
pull request に関するコメントには、pull request に直接コミットできる 推奨自動修正 が含まれています。 ロジック、セキュリティ、スタイルに関して推奨される自動修正を慎重に確認し、[ 提案のコミット] をクリックします。
これらの提案を適用するためにCopilot ライセンスは必要ありません。
Copilotコーディングエージェント
データ再利用コード品質: coding-agentで検出結果を修正する方法 %}
4. 無関係な結果を無視する
データ再利用可能なコード品質.的外れな所見を無視する %}
5. 変更をプッシュし、スキャンを待つ
結果を修正または無視した後、プル要求に関連付けられているブランチに変更をプッシュします。 GitHub Code Quality は、変更を自動的に再スキャンし、pull requestのコメントを適切に更新します。
6. リポジトリのコード品質評価を確認する
書き込みアクセス権を持つすべてのユーザーは、リポジトリの全体的なコード品質評価を表示できます。これは、既定のブランチ全体のコードの信頼性と保守容易性の状態を要約します。
リポジトリの評価を表示するには、リポジトリの [ セキュリティ ] タブに移動し、サイドバーで コードの品質 を展開し、 標準の結果 をクリックします。
pull request をマージする前に問題を解決することで、これらの評価の維持に直接貢献しました。
次のステップ
- 既定のブランチのコード品質の結果に対処し、リポジトリの信頼性と保守容易性の評価を理解します。 「リポジトリのコードの品質の向上」を参照してください。
-
[コミュニティ ディスカッション](https://github.com/orgs/community/discussions/177488)で GitHub Code Quality に関するフィードバックを提供します。