关于对 code scanning 合并保护使用规则集
Note
- 此功能目前为 beta 版本,可能会更改。
- 规则集的合并保护与状态检查无关。 有关状态检查的详细信息,请参阅“关于状态检查”。
- 与规则集的合并保护不适用于默认设置分析的合并队列组或 Dependabot 拉取请求。
当满足以下条件之一时,可以使用规则集防止合并拉取请求:
-
所需工具发现了一个 code scanning 警报,其严重性是在规则集中定义的。
-
所需 code scanning 工具的分析仍在进行中。
-
未为存储库配置所需的 code scanning 工具。
有关 code scanning 警报的详细信息,请参阅“关于代码扫描警报”。
可以在存储库或组织级别使用规则集设置合并保护,也可以为使用默认设置或高级设置配置的存储库设置合并保护。 还可以使用 REST API 通过规则集设置合并保护。
有关规则集的详细信息,请参阅“关于规则集”。
为存储库创建合并保护规则集
-
在 GitHub 上,导航到存储库的主页面。
-
在存储库名称下,单击 “设置”。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”。
-
在左侧边栏的“代码和自动化”下,单击“规则”,然后单击“规则集” 。
-
单击“添加规则集”。****
-
若要创建面向分支的规则集,请单击“新建分支规则集”。
-
在“规则集名称”下,键入规则集的名称。
-
(可选)若要更改默认强制实施状态,请单击 “已禁用”**** 并选择强制实施状态。 有关强制状态的详细信息,请参阅“关于规则集”。
-
在“分支保护”下,选择“要求 code scanning 结果。
-
在“所需工具和警报阈值”下,单击“ 添加工具”,然后选择包含下拉列表的 code scanning 工具。 例如,“CodeQL”。
-
code scanning 工具的名称旁边:
- 单击“警报”,然后选择“无”、“错误”、“错误和警告”或“全部”。
- 单击“安全警报”,然后选择“无”、“严重”、“高或更高”、“中”或“全部”。
有关警报严重性和安全严重性级别的详细信息,请参阅“关于代码扫描警报”。
有关管理存储库中的规则集的详细信息,请参阅“管理存储库的规则集”。
为组织中的所有存储库创建合并保护规则集
-
在 GitHub 的右上角,选择个人资料照片,然后单击“你的组织”。
-
在组织旁边,单击“设置”。
-
在左侧边栏的“代码、规划和自动化”部分,单击“ 存储库”,然后单击“规则集”。********
-
单击“添加规则集”。****
-
若要创建面向分支的规则集,请单击“新建分支规则集”。
-
在“规则集名称”下,键入规则集的名称。
-
(可选)若要更改默认强制实施状态,请单击 “已禁用”**** 并选择强制实施状态。 有关强制状态的详细信息,请参阅“关于规则集”。
-
在“分支保护”下,选择“要求 code scanning 结果。
-
在“所需工具和警报阈值”下,单击“ 添加工具”,然后选择包含下拉列表的 code scanning 工具。 例如,“CodeQL”。
-
code scanning 工具的名称旁边:
- 单击“警报”,然后选择“无”、“错误”、“错误和警告”或“全部”。
- 单击“安全警报”,然后选择“无”、“严重”、“高或更高”、“中”或“全部”。
有关警报严重性和安全严重性级别的详细信息,请参阅“关于代码扫描警报”。
有关管理组织中存储库的规则集的详细信息,请参阅“管理组织中存储库的规则集”。
使用 REST API 创建合并保护规则集
可以使用 REST API 通过 code_scanning
规则创建规则集,以便定义特定工具和设置警报阈值。 有关详细信息,请参阅“规则的 REST API 终结点”。