Skip to main content

Enterprise 内のリポジトリのコード ルールセットを管理する

既存のルールセットを編集、監視、削除して、Enterprise 内のリポジトリとの操作方法を変更できます。

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

Enterprise owners

Enterprise レベルでルールセットを作成した後にルールセットを変更して、ユーザーが対象のリポジトリを操作する方法を変更できます。 たとえば、次のようなことができます。

  • リポジトリ内のブランチまたはタグをより適切に保護するルールを追加する
  • 共同作成者エクスペリエンスへの影響をテストした後に、ルールセットを [Evaluate] モードから [Active] に切り替える

Note

リポジトリの読み取りアクセス権を持つすべてのユーザーは、そのリポジトリで動作しているアクティブなルールセットを見ることができます。

委任されたバイパスについて

Note

プッシュ ルールの委任されたバイパスは現在 パブリック プレビュー 段階であり、変更される可能性があります。

プッシュルールセットの委任されたバイパスを使用すると、プッシュ保護をバイパスできるユーザーと、ブロックされたプッシュを許可する必要があるユーザーを制御できます。

委任されたバイパスでは、リポジトリの投稿者は、制限された内容を含むコミットをプッシュする際に、「バイパス権限」を要求する必要があります。 要求は、指定されたレビュー担当者グループに送信されます。レビュー担当者は、プッシュ ルールをバイパスする要求を承認または拒否します。

プッシュ ルールをバイパスする要求が承認された場合、投稿者は制限された内容などコミットをプッシュできます。 要求が拒否された場合、投稿者は、再度プッシュする前に、制限された内容などのコミット (複数可) から内容を削除する必要があります。

委任されたバイパスを構成するには、組織の所有者またはリポジトリ管理者が最初に 「バイパス リスト」 を作成します。 バイパス リストには、チームやリポジトリ管理者など、プッシュ保護をバイパスする要求を監督する特定のロールとチームが含まれます。 詳細については、「組織内のリポジトリのルールセットを管理する」および「ルールセットについて」を参照してください。

ルールセットの編集

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

  1. GitHub の右上隅にあるプロフィール写真をクリックします。

  2. ご自分の環境に応じて、[Your enterprise] または [Your enterprises] をクリックし、表示するエンタープライズをクリックします。

  3. 左側のサイドバーの [Policies] セクションで [Code] をクリックし、次に [Rulesets] をクリックします。

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

  5. 必要に応じてルールセットを変更します。

    使用できるルールについては、「ルールセットで使用できるルール」をご覧ください

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

ルールセットの削除

Note

リポジトリの読み取りアクセス権を持つすべてのユーザーは、そのリポジトリで動作しているアクティブなルールセットを見ることができます。

  1. GitHub の右上隅にあるプロフィール写真をクリックします。
  2. ご自分の環境に応じて、[Your enterprise] または [Your enterprises] をクリックし、表示するエンタープライズをクリックします。
  3. 左側のサイドバーの [Policies] セクションで [Code] をクリックし、次に [Rulesets] をクリックします。
  4. ルールセットの名前の右側にある を選び、 [ルールセットの削除] をクリックします。

ルールセット履歴の使用

Note

  • ルールセット履歴は現在 パブリック プレビュー にあり、変更される可能性があります。
  • 2023 年 10 月 11 日の パブリック プレビュー のリリース後にルールセットに加えられた変更のみがルールセット履歴に含まれます。

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

  1. GitHub の右上隅にあるプロフィール写真をクリックします。
  2. ご自分の環境に応じて、[Your enterprise] または [Your enterprises] をクリックし、表示するエンタープライズをクリックします。
  3. 左側のサイドバーの [Policies] セクションで [Code] をクリックし、次に [Rulesets] をクリックします。
  4. ルールセットの変更履歴を表示するには、ルールセットの名前の右側にある を選択し、[ 履歴] をクリックします。
  5. 特定のイテレーションの右側にある を選択し、[変更の比較][復元]、または [ダウンロード] をクリックします。

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

前のセクションでエクスポートした JSON ファイルを使って、別のリポジトリ、organization、または Enterprise からルールセットをインポートできます。 これは、同じルールセットを複数のリポジトリ、organization、または Enterprise に適用する場合に便利です。

  1. GitHub の右上隅にあるプロフィール写真をクリックします。
  2. ご自分の環境に応じて、[Your enterprise] または [Your enterprises] をクリックし、表示するエンタープライズをクリックします。
  3. 左側のサイドバーの [Policies] セクションで [Code] をクリックし、次に [Rulesets] をクリックします。
  4. [新しいルールセット] ドロップダウンを選択し、[ルールセットのインポート] をクリックします。
  5. エクスポートされた JSON ファイルを開きます。
  6. インポートしたルールセットを確認し、[作成] をクリックします。

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

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

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

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

[ルールの分析情報] ページのスクリーンショット。 [Pass]、[Bypass]、[Fail] とマークされた 3 つのアクションが一覧に表示されています。 失敗したアクションには、[Evaluate] というラベルが付いています。

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

  1. GitHub の右上隅にあるプロフィール写真をクリックします。
  2. ご自分の環境に応じて、[Your enterprise] または [Your enterprises] をクリックし、表示するエンタープライズをクリックします。
  3. 左側のサイドバーの [Policies] セクションで [Code] をクリックし、次に [Rulesets] をクリックします。
  4. [ルール分析情報] ページで、ページ上部のドロップダウン メニューを使用して、ルールセット、リポジトリ、アクター、期間でアクションをフィルター処理します。
  5. バイパスに失敗した、またはバイパスを必要とした特定のルールを確認するには、 をクリックして、ルールセットの名前を展開します。

プッシュ ルールをバイパスする要求の管理

Note

プッシュ ルールの委任されたバイパスは現在 パブリック プレビュー 段階であり、変更される可能性があります。

バイパス権限のすべての要求は、リポジトリの [ルール設定] タブにある [バイパス要求] ページで表示および管理できます。

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

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

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

  3. [バイパス要求] をクリックします。

承認者 (バイパス リストのメンバー)、要求者 (要求を作成する投稿者)、期間、および状態によって要求をフィルター処理できます。 要求には次の状態が割り当てられます。

状態説明
Cancelled要求は投稿者によって取り消されました。
Completed要求が承認され、コミットがリポジトリにプッシュされました。
Denied要求が審査され否認されました。
Expired要求の有効期限が切れました。 要求は 7 日間有効です。
Open要求はまだレビューされていないか、承認されていますが、コミットがリポジトリにプッシュされていません。

投稿者が制限された内容などコミットをプッシュするバイパス権限を要求すると、バイパス リストのメンバーはすべて、要求へのリンクを含む電子メールによる通知を受信します。 その後、バイパス リストのメンバーは、要求の有効期限が切れる前に、要求を確認して承認または拒否する 7 日間があります。

投稿者は電子メールで決定を通知され、必要なアクションを実行する必要があります。 要求が承認された場合、投稿者は制限された内容などコミットをリポジトリにプッシュできます。 要求が拒否された場合、投稿者はコミットから制限された内容を削除して、コミットをリポジトリに正常にプッシュする必要があります。