Skip to main content

リポジトリのルールセットの管理

リポジトリ内の既存のルールセットを編集、監視、削除して、ユーザーが特定のブランチやタグを操作する方法を変更できます。

この機能を使用できるユーザーについて

リポジトリのルールセットは、そのリポジトリの読み取りアクセス権を持つすべてのユーザーが表示できます。 リポジトリの管理者アクセス権を持つユーザー、または "リポジトリ ルールの編集" アクセス許可を持つカスタム ロールは、リポジトリルールセットの分析情報を表示できます。 詳しくは、「カスタムリポジトリロールについて」をご覧ください。

ルールセットは、GitHub Free と GitHub Free の Organization のパブリック リポジトリ、GitHub Pro、GitHub Team、GitHub Enterprise Cloud のパブリックとプライベートのリポジトリで利用できます。 詳しくは、「GitHub のプラン」をご覧ください。

ルールセットを作成した後、ルールセットに変更を加えることで、対象となるブランチやタグとのインタラクション方法を変更することができます。 たとえば、ブランチまたはタグをより適切に保護するためのルールを追加したり、 をリポジトリの共同作成者エクスペリエンスへの影響をテストした後にルールセットを "評価" モードから "アクティブ" に切り替えたりできます。 の共同作成者エクスペリエンスに対する意図しない影響をトラブルシューティングするためにルールセットを一時的に無効にします。

REST および GraphQL API を使ってルールセットを管理できます。 詳細については、「ルールの REST API エンドポイント」および「ミューテーション」を参照してください。

ヒント: 組織の所有者である場合は、組織レベルでルールセットを作成できます。 これらのルールセットは、組織内の特定のリポジトリに、およびそれらのリポジトリ内の特定のブランチに適用できます。 詳しくは、「組織内のリポジトリのルールセットを作成する」を参照してください。

リポジトリのルールセットの表示

リポジトリへの読み取りアクセス権を持つユーザーは、リポジトリを対象とするルールセットを表示できます。 これは、ブランチにコミットできない理由を知りたい場合に便利です。 [ルールセット] ページでは、特定のブランチまたはタグを対象とするアクティブなルールセットを表示できます。 "評価" モードで実施されている、適用されていないルールセットも表示されます。

  1. GitHub.com で、リポジトリのメイン ページへ移動します。

  2. 左側のファイル ツリー ビューで、 ブランチ ドロップダウン メニューを選択し、 [すべてのブランチを表示] をクリックします。 統合ファイル エディターの上部にあるブランチ ドロップダウン メニューも見つかります。

    リポジトリのファイル ツリー ビューのスクリーンショット。 ブランチ用のドロップダウン メニューが展開され、濃いオレンジの枠線で囲まれています。

  3. ブランチの左側にある をクリックします。

    リポジトリ内のブランチの一覧のスクリーンショット。 "メイン" ブランチの横に、鍵穴のある盾のアイコンがオレンジ色の枠線で強調表示されています。

  4. 必要に応じて、別のブランチまたはタグのルールセットを表示するには、ブランチ セレクターのドロップダウン メニューを使用します。

    [ルールセット] ページのスクリーンショット。 ルールセットの上には、ドロップダウン メニューが、ブランチ アイコンと "team-test" というラベル付きで、オレンジ色の枠線で強調表示されています。

  5. 表示するルールセットの名前をクリックします。

ルールセットの編集

注: ルールセットが組織レベルで作成されている場合、リポジトリの設定からルールセットを編集することはできません。 ルールセットを編集する権限を持っている場合は、組織の設定でそうすることができます。 詳しくは、「組織内のリポジトリのルールセットを管理する」を参照してください。

ルールセットを編集して、名前、バイパスのアクセス許可、ルールなど、ルールセットの一部を変更できます。 また、ルールセットを有効または一時的に無効にする場合など、ルールセットを編集してその状態を変更することもできます。

  1. GitHub.com で、リポジトリのメイン ページへ移動します。

  2. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. 左側のサイド バーの [コードと自動化] の下で、 [ルール] をクリックし、 [ルールセット] をクリックします。

    リポジトリの [設定] ページのサイド バーのスクリーンショット。 [ルール] サブメニューが展開され、[ルールセット] オプションの枠線がオレンジ色で表示されています。

  4. [ルールセット] ページで、編集するルールセットの名前をクリックします。

  5. 必要に応じてルールセットを変更します。 使用可能なルールについて詳しくは、「ルールセットで使用できるルール」を参照してください。

  6. ページの下部にある [変更の保存] をクリックします。

ルールセットの削除

ヒント: ルールセットを一時的に無効にしたいが、削除したくない場合は、ルールセットの状態を "無効" に設定できます。 詳しくは、「ルールセットの編集」をご覧ください。

  1. GitHub.com で、リポジトリのメイン ページへ移動します。

  2. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. 左側のサイド バーの [コードと自動化] の下で、 [ルール] をクリックし、 [ルールセット] をクリックします。

    リポジトリの [設定] ページのサイド バーのスクリーンショット。 [ルール] サブメニューが展開され、[ルールセット] オプションの枠線がオレンジ色で表示されています。

  4. 削除するルールセットの名前をクリックします。

  5. ルールセットの名前の右側にある を選び、 [ルールセットの削除] をクリックします。

    ルールセットを編集するページのスクリーンショット。 3 つのドットのラベルが付いたボタンの下に、[ルールセットの削除] というラベルが付いたオプションがオレンジ色の枠線で囲まれています。

ルールセット履歴の使用

注:

  • ルールセット履歴は現在、公開用ベータ版であり、変更されることがあります。
  • 2023 年 10 月 11 日の公開用ベータ版のリリース後にルールセットに加えられた変更のみがルールセット履歴に含まれます。

ルールセットに対するすべての変更を表示し、特定のイテレーションに戻すことができます。 特定のイテレーションでのルールセットの構成を含む JSON ファイルをダウンロードすることもできます。 ルールセットのバイパス リストは、エクスポートされた JSON ファイルから除外されます。

  1. GitHub.com で、リポジトリのメイン ページへ移動します。

  2. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. 左側のサイド バーの [コードと自動化] の下で、 [ルール] をクリックし、 [ルールセット] をクリックします。

    リポジトリの [設定] ページのサイド バーのスクリーンショット。 [ルール] サブメニューが展開され、[ルールセット] オプションの枠線がオレンジ色で表示されています。

  4. ルールセットの変更履歴を表示するには、ルールセットの名前の右側にある を選択し、[ 履歴] をクリックします。

    リポジトリ ルールセットのページのスクリーンショット。 3 つのドットのラベルが付いたボタンの下に、[履歴] というラベルが付いたオプションがオレンジ色の枠線で囲まれています。

  5. 特定のイテレーションの右側にある を選択し、[変更の比較][復元]、または [ダウンロード] をクリックします。

    リポジトリ ルールセット履歴のページのスクリーンショット。 3 つのドットのラベルが付いたドロップダウン メニューが展開され、オレンジ色の枠線でハイライトされています。

ルールセットのインポート

JSON ファイルを使用して、別のリポジトリまたは組織からルールセットをインポートできます。 これは、複数のリポジトリまたは組織に同じルールセットを適用する場合に便利です。

  1. GitHub.com で、リポジトリのメイン ページへ移動します。

  2. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. 左側のサイド バーの [コードと自動化] の下で、 [ルール] をクリックし、 [ルールセット] をクリックします。

    リポジトリの [設定] ページのサイド バーのスクリーンショット。 [ルール] サブメニューが展開され、[ルールセット] オプションの枠線がオレンジ色で表示されています。

  4. [新しいルールセット] ドロップダウンを選択し、[ルールセットのインポート] をクリックします。

    リポジトリ ルールセットのページのスクリーンショット。 [新しいルールセット] というラベルのドロップダウン メニューが展開され、"ルールセットのインポート" オプションがオレンジ色の枠線でハイライトされます。

  5. エクスポートされた JSON ファイルを開きます。

  6. インポートしたルールセットを確認し、[作成] をクリックします。

ルールセットの分析情報の表示

ルールセットの分析情報を表示して、ルールセットがリポジトリにどのように影響しているかを確認できます。 [ルールの分析情報] ページに、次のユーザー アクションのタイムラインが表示されます。 フィルターを使用し、探しているものを見つけることができます。

  • 1 つ以上のルールセットに対してチェックされ、成功したアクション。
  • 1 つ以上のルールセットに対してチェックされ、失敗したアクション。
  • 他のユーザーがバイパスした 1 つ以上のルールセットに対するアクション。

ルールセットが "評価" モードで実行されている場合、ルールセットがアクティブなときに成功または失敗するアクションを確認することができます。

[ルールの分析情報] ページのスクリーンショット。 1 つは "成功" とマークされ、1 つは "バイパス" とマークされ、1 つは "評価" ラベルで "失敗" とマークされた 3 つのアクションが一覧表示されています。

  1. GitHub.com で、リポジトリのメイン ページへ移動します。

  2. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. 左側のサイド バーの [コードと自動化] で、 [ルール] をクリックし、 [分析情報] をクリックします。

    リポジトリの [設定] ページのサイド バーのスクリーンショット。 [ルール] サブメニューが展開され、[分析情報] オプションの枠線がオレンジ色で表示されています。

  4. [ルールの分析情報] ページで、ページ上部のドロップダウン メニューを使用して、ルールセット、ブランチ、アクター、期間でアクションをフィルター処理します。

  5. バイパスに失敗した、またはバイパスを必要とした特定のルールを確認するには、 をクリックして、ルールセットの名前を展開します。

    [ルールの分析情報] ページのスクリーンショット。 [octocat の作成は許可されません] というラベルが付いたイベントの右側にある 3 つの水平ドットのアイコンがオレンジ色の枠線で囲まれています。

  6. 必要に応じて、同じマージ グループ内の対応する pull request のマージ キューの詳細を確認します。

    注: マージ キュー ルールはパブリック ベータ版なので、インターフェイスは変更される可能性があります。