メモ
GitHub Code Quality は現在 パブリック プレビュー にあり、変更される可能性があります。 パブリック プレビュー の間、Code Quality は課金されませんが、Code Quality スキャンでは GitHub Actions 分が消費されます。
イントロダクション
コード品質基準を満たしていないプル要求をブロックするには、[コード 品質の結果を要求する] 分岐規則をルールセットに追加し、必要な重大度レベルを指定します。 プル要求がこのしきい値に達しない場合は、マージできません。
[前提条件]
- Code Quality が有効になっています。 「GitHub Code Qualityの有効化」を参照してください
- サポートされている言語のコード。 サポートされている言語を参照してください。
メモ
しきい値は、リポジトリにサポートされている 1 つ以上の言語のコードがある場合にのみ影響します。 GitHub Code Qualityの有効化 を参照してください。
確認 Code Quality がプルリクエストで正常に実行されること
Code Quality のしきい値を含むようにルールセットを追加または更新する前に、まず コード品質 ワークフローが実行されていて、結果が pull request に報告されていることを確認してください。 それ以外の場合、ルールセット はすべての プル要求のマージをブロックする可能性があります。
- 最近のプル要求を開き、プル要求の下部にある [チェック] の概要までスクロールします。
- "CodeQL - コード品質" チェックが正常に成功して実行され、その結果が報告されたことを確認します。
詳しくは、「CodeQL を利用したコード品質の分析」をご覧ください。
Code Quality を含むルールセットを追加するか更新する
- リポジトリの [設定] タブに移動します。
- 左側のサイドバーの [コードと自動化] で、 ルールを展開し、[ ルールセット] をクリックします。
- 既定のブランチを保護するルールセットがまだない場合は、[ 新しいルールセット ] を展開し、[ 新しいブランチ ルールセット] をクリックします。 または、既定のブランチの既存のルールセットを開き、手順 5 に進みます。
- 新しいルールセットを作成する場合:
- ルールセットの名前を定義します。
- [強制状態] を [アクティブ] に設定します。
- [ターゲット ブランチ] で、ターゲットとして "既定のブランチを含める" を追加します。
- [分岐ルール] で、[コード品質の結果を要求する] を有効にします。
- プル要求を既定のブランチにマージする前に解決する必要があるコード品質の結果の最も低い重大度を定義するには、[重大度] を設定します。 例えば次が挙げられます。
- "Errors" を設定して、未解決のコード品質 エラー がマージされた pull request をブロックします。
- "警告以上" を設定して、未解決のコード品質 の警告 または エラー がマージされた pull request をブロックします。
- 未解決の コード品質メモ、 警告 、または エラー がマージされた pull request をブロックするには、"Notes 以上" を設定します。
- "すべて" を設定して、任意の 未解決のコード品質の結果がマージされた pull request をブロックします。
- ルールセットの定義または編集が完了したら、作成 または 変更の保存 をクリックします。
次のステップ
GitHub Code Quality が pull request で動作し、コード品質の問題が既定のブランチに到達するのを防ぐ方法について説明します。 「プルリクエストをマージする前にコード品質に関する指摘を修正すること」を参照してください。