Skip to main content

配置标记保护规则

可以为存储库配置标记保护规则,防止参与者创建或删除标记。

谁可以使用此功能?

标记保护规则适用于具有 GitHub Free 和组织的 GitHub Free 的公共存储库,以及具有 GitHub Pro、GitHub Team、GitHub Enterprise Cloud 和 GitHub Enterprise Server 的公共和专用存储库。 有关详细信息,请参阅“GitHub 的计划”。

注意:标记保护规则目前为 beta 版本,可能随时变动。

关于标记保护规则

添加标记保护规则时,所有与提供的模式匹配的标记都将受到保护。 只有在存储库中具有管理员或维护权限的用户或具有“编辑存储库规则”权限的自定义角色才能创建受保护的标记,并且只有在存储库中具有管理员权限的用户或具有“编辑存储库规则”权限的自定义角色才能删除受保护的标记。 有关详细信息,请参阅“组织的存储库角色”。 GitHub Apps 需要 Repository administration: write 权限来修改受保护的标记。

此外,还可创建自定义存储库角色,允许其他用户组创建或删除与标记保护规则匹配的标记。 有关详细信息,请参阅“管理组织的自定义存储库角色”。

关于将标记保护规则导入存储库规则集

可将现有标记保护规则导入存储库规则集。 这样将实施你当前为存储库提供的相同标记保护。 有关详细信息,请参阅“将标记保护规则导入存储库规则集”。

与标记保护规则相比,规则集具备以下优势。

  • 与保护规则不同,我们可以同时应用多个规则集,因而你可以确信,当有人与某个标记交互时,存储库中适用于该标记的所有规则都将进行评估。 有关详细信息,请参阅“关于规则集”。
  • 规则集有状态,以便用户可以轻松管理存储库中处于活动状态的规则集,而无需删除规则集。
  • 对存储库具有读取访问权限的任何人都可以查看处于活动状态的存储库规则集。 这意味着开发人员可以了解因何触发了规则,或审核员可以检查存储库的安全约束,而无需存储库的管理员访问权限。
  • 使用规则集,可以在组织范围内限制标记名称。

添加标记保护规则

  1. 在 GitHub.com 上,导航到存储库的主页。

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

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。

  3. 在边栏的“代码和自动化”部分中,单击“ 标记”。

  4. 单击“新建规则”。

  5. 在“标记名称模式”下,键入要保护的标记的模式。 标记保护规则使用 fnmatch 语法。 有关语法选项的详细信息,请参阅 fnmatch 文档。 在此示例中,键入 * 可保护所有标记。

    “受保护的标记/新规则”页的屏幕截图。 示例模式 * 随“添加规则”按钮一起显示。

  6. 单击 “添加规则”

将标记保护规则导入存储库规则集

  1. 在 GitHub.com 上,导航到存储库的主页。

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

    存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。

  3. 在边栏的“代码和自动化”部分中,单击“ 标记”。

  4. 单击右上角的“导入规则集”****。

  5. 选择“创建单独的规则集以创建和删除受保护的标记”,或选择“为所有受保护标记操作创建一个规则集”。 创建后,还可编辑规则集以进一步优化其行为。

  6. 单击“导入” 。