Skip to main content

代码扫描合并保护

代码扫描规则可防止含有潜在漏洞的拉取请求被合并。

谁可以使用此功能?

Repository administrators and organization owners

Rulesets are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, and GitHub Enterprise Cloud.

code scanning 合并保护的规则集

规则集是一个命名的规则列表,用于控制用户如何与存储库中的分支和标记进行交互。 可以将 code scanning 规则添加到规则集,以防止在满足以下任一条件时合并拉取请求:

  • 某个必需的工具发现了一个 code scanning 警报,且该警报的严重程度符合规则集中的定义。
  • 所需的工具分析仍在进行中。
  • 未为存储库配置所需的工具。

通常情况下,你应在长期特性分支上使用 code scanning 合并保护,以确保在拉取请求合并之前已经对代码进行分析。

配置 code scanning 规则不会自动启用 code scanning。 若要了解如何启用代码扫描,请参阅 配置代码扫描的默认设置

注意

  • 规则集的合并保护与状态检查无关。 有关状态检查的详细信息,请参阅 关于状态检查

可用性

可以使用规则集设置 code scanning 合并保护:

  • 在存储库级别
  • 在组织级别(仅用于GitHub Enterprise计划)

例外和限制

与规则集的合并保护 不适用于

  • 合并队列组
  • 默认设置分析的 Dependabot 拉取请求

此外,警报标识的所有代码行均须存在于拉取请求差异中。 有关详细信息,请参阅“对代码扫描的 SARIF 支持”。

后续步骤

若要配置一个要求 数据变量.product.prodname_code_scanning %} 结果的规则集,请参阅 设置代码扫描合并保护