跳到主要内容

管理代码库的规则集

您可以编辑、监控和删除代码库中现有的规则集,以更改人们与特定分支和标签交互的方式。

谁可以使用此功能?

任何具有代码库读取权限的人都可以查看代码库的规则集。具有代码库管理员访问权限或具有“编辑代码库规则”权限的自定义角色的人员可以创建、编辑和删除代码库的规则集。

规则集可在使用 GitHub Free 和 GitHub Free for organizations 的公共仓库中获取,也可在使用 GitHub Pro、GitHub Team 和 GitHub Enterprise Cloud 的公共和私有仓库中获取。更多信息,请参阅“GitHub 的套餐”。

推送规则集适用于 GitHub Team 套餐中的内部和私有仓库,以及启用了推送规则集的仓库的分支。

创建规则集后,您仍然可以对其进行更改。例如,您可以添加规则以更好地保护您的分支或标签,或者您可以暂时禁用规则集以排除对仓库贡献者体验的任何意外影响。

您可以使用 REST 和 GraphQL API 来管理规则集。更多信息,请参阅“规则的 REST API 端点”和“更改”。

查看仓库的规则集

在“规则集”页面上,任何拥有仓库读取权限的用户都可以查看针对特定分支、标签或推送限制的活动规则集。

对于分支仓库的推送规则集,“规则集”页面将指示规则集由应用规则的源仓库管理。

  1. 在 GitHub 上,导航到仓库的主页。

  2. 在左侧的文件树视图中,选择分支下拉菜单,然后单击查看所有分支。您也可以在集成文件编辑器的顶部找到分支下拉菜单。

    Screenshot of the file tree view for a repository. A dropdown menu for branches is expanded and outlined in dark orange.

  3. 单击分支名称左侧的.

  4. 或者,要筛选结果,请单击选项卡或使用“搜索分支”搜索栏。

  5. 单击要查看的规则集的名称。

编辑规则集

您可以编辑规则集以更改规则集的部分内容,例如名称、绕过权限或规则。您还可以编辑规则集以更改其状态,例如,如果您想启用或暂时禁用规则集。

  1. 在 GitHub 上,导航到仓库的主页。

  2. 在您的仓库名称下,单击 设置。如果您看不到“设置”选项卡,请选择下拉菜单,然后单击设置

    Screenshot of a repository header showing the tabs. The "Settings" tab is highlighted by a dark orange outline.

  3. 在左侧边栏中,在“代码和自动化”下,单击规则,然后单击规则集

    Screenshot of the sidebar of the "Settings" page for a repository. The "Rules" sub-menu is expanded, and the "Rulesets" option is outlined in orange.

  4. 在“规则集”页面上,单击要编辑的规则集的名称。

  5. 根据需要更改规则集。有关可用规则的信息,请参阅“规则集的可用规则”。

  6. 在页面底部,单击保存更改

删除规则集

提示

如果您想暂时禁用规则集但不想删除它,您可以将规则集的状态设置为“已禁用”。更多信息,请参阅“编辑规则集”。

  1. 在 GitHub 上,导航到仓库的主页。

  2. 在您的仓库名称下,单击 设置。如果您看不到“设置”选项卡,请选择下拉菜单,然后单击设置

    Screenshot of a repository header showing the tabs. The "Settings" tab is highlighted by a dark orange outline.

  3. 在左侧边栏中,在“代码和自动化”下,单击规则,然后单击规则集

    Screenshot of the sidebar of the "Settings" page for a repository. The "Rules" sub-menu is expanded, and the "Rulesets" option is outlined in orange.

  4. 单击要删除的规则集的名称。

  5. 在规则集名称的右侧,选择,然后单击 删除规则集

    Screenshot of the page for editing a ruleset. Below a button labeled with three dots, an option labeled "Delete ruleset" is outlined in orange.

使用规则集历史记录

注意

  • 规则集历史记录目前处于公开预览阶段,可能会有所更改。
  • 只有在 2023 年 10 月 11 日公开预览版发布后对规则集进行的更改才包含在规则集历史记录中。

您可以查看对规则集的所有更改并恢复到特定迭代。您还可以下载包含规则集在特定迭代时的配置的 JSON 文件。规则集的绕过列表不包含在导出的 JSON 文件中。

  1. 在 GitHub 上,导航到仓库的主页。

  2. 在您的仓库名称下,单击 设置。如果您看不到“设置”选项卡,请选择下拉菜单,然后单击设置

    Screenshot of a repository header showing the tabs. The "Settings" tab is highlighted by a dark orange outline.

  3. 在左侧边栏中,在“代码和自动化”下,单击规则,然后单击规则集

    Screenshot of the sidebar of the "Settings" page for a repository. The "Rules" sub-menu is expanded, and the "Rulesets" option is outlined in orange.

  4. 要查看规则集更改的历史记录,请选择在规则集名称的右侧,然后单击 历史记录

    Screenshot of the page for repository rulesets. Below a button labeled with three dots, an option labeled "History" is outlined in orange.

  5. 在特定迭代的右侧,选择,然后单击比较更改恢复下载

    Screenshot of the page for repository rulesets history. A dropdown menu labeled with three dots is expanded and highlighted with an orange outline.

导入规则集

您可以使用 JSON 文件从另一个仓库或组织导入规则集。如果您想将相同的规则集应用于多个仓库或组织,这将非常有用。

  1. 在 GitHub 上,导航到仓库的主页。

  2. 在您的仓库名称下,单击 设置。如果您看不到“设置”选项卡,请选择下拉菜单,然后单击设置

    Screenshot of a repository header showing the tabs. The "Settings" tab is highlighted by a dark orange outline.

  3. 在左侧边栏中,在“代码和自动化”下,单击规则,然后单击规则集

    Screenshot of the sidebar of the "Settings" page for a repository. The "Rules" sub-menu is expanded, and the "Rulesets" option is outlined in orange.

  4. 选择新建规则集下拉菜单,然后单击导入规则集

    Screenshot of the page for repository rulesets. A dropdown menu labeled "New ruleset" is expanded and the "Import a ruleset" option is highlighted with an orange outline.

  5. 打开导出的 JSON 文件。

  6. 查看导入的规则集,然后单击创建