手动修复警报
任何对仓库具有写入权限的人都可以通过提交对代码的更正来修复警报。 如果存储库已安排在拉取请求上运行 code scanning,最好提交包含更正内容的拉取请求。 这将触发 code scanning 对更改的分析,并测试你的修补程序不会引入任何新问题。 请参阅“鉴定拉取请求中的代码扫描警报”。
可使用自由文本搜索或筛选器显示警报子集,然后依次将所有匹配的警报标记为已关闭。
警报只能在一个分支中修复。 你可在警报摘要中使用“分支”筛选器,以检查某个警报是否已在特定分支中修复。

请注意,如果你已筛选掉非默认分支上的警报,但默认分支上存在相同的警报,则任何给定警报的警报页仍将仅反映默认分支上的警报状态,即使该状态与非默认分支的状态冲突也是如此。 例如,如果 branch-x 的警报摘要中的“未解决”列表中显示的警报已在默认分支上修复,该警报可能会在警报页上显示“已修复”状态。 可在警报页右侧的“受影响的分支”部分查看筛选的分支的警报状态。
注意
如果使用多个配置运行 code scanning ,则有时会由多个配置生成相同的警报。 除非定期运行所有配置,否则可能会看到在一个配置中已修复但在另一个配置中未修复的警报。 可以从分支中删除这些过时的配置和警报。 请参阅 从分支中删除过时的配置和警报。
忽略警报
有两种方法可以关闭警报。 你可以修复代码中的问题,也可以忽略警报。
取消显示警报是关闭你认为不需要修复的警报的一种方法。 例如,仅用于测试的代码中有错误,或者修复错误的工作超过改进代码的潜在益处。 你可消除代码中的 code scanning 注释或 Security 选项卡摘要列表中的警报。
当你忽略警报时:
- 该警报在所有分支中取消显示。
- 该警报已从项目的当前警报数量中移除。
- 警报被移动到警报摘要中的“Closed(已关闭)”列表,需要时你可以在其中重新打开它。
- 已记录关闭警报的原因。
- (可选)你可以对忽略操作添加评论,以记录忽略警报的背景信息。
- 下次 code scanning 运行时,相同的代码不会生成警报。
要忽略警报:
- 在 GitHub 上,导航到存储库的主页面。
- 在存储库名称下,单击 Security 选项卡。如果看不到“ Security”选项卡,请选择 下拉菜单,然后单击 Security。
- 在左边栏中,单击“ Code scanning”****。
- 如果要忽略警报,请务必先了解警报,以便选择正确的忽略原因。 单击要了解的警报。
- 查看警报,然后单击“忽略警报”**** 并选择或输入关闭警报的原因。

dismissed_comment 终结点的 alerts/{alert_number} 中。 有关详细信息,请参阅“适用于代码扫描的 REST API 终结点”。
如果将 CodeQL 警报作为误报予以忽略,例如因为代码使用了不受支持的清理库,请考虑参与 CodeQL 存储库并改进分析。 有关 CodeQL 的详细信息,请参阅“参与 CodeQL”。
一次忽略多个警报
如果项目有多个由于相同原因要忽略的警报,你可以从警报摘要中批量忽略它们。 通常,你需要筛选列表,然后忽略所有匹配的警报。 例如,你可能想要忽略项目中所有已标记为特定通用缺陷枚举 (CWE) 漏洞的当前警报。
重新打开已消除的警报
如果已消除警报,但后来意识到需要修复警报,可以重新打开警报,并使用代码修复问题。 显示关闭的警报列表,找到警报进行显示,然后重新打开。 然后,可以像修复其他警报一样修复该警报。
从分支中删除过时的配置和警报
单个存储库上可能有多个 code scanning 配置。 运行时,多个配置可以生成相同的警报。 此外,如果配置按不同的计划运行,警报状态可能会因配置少见或过时而过时。 有关多个配置产生的警报的更多信息,请参阅 代码扫描警报。
-
在 GitHub 上,导航到存储库的主页面。
-
在存储库名称下,单击 Security 选项卡。如果看不到“ Security”选项卡,请选择 下拉菜单,然后单击 Security。
-
在左边栏中,单击“ Code scanning”****。
-
在“”Code scanning下,单击警报 code scanning 。
-
在边栏的“受影响的分支”部分,单击所需的分支。
-
在“配置分析”对话框中,查看在所选分支上报告了此警报的配置的详细信息。 若要删除所需分支的不需要的配置,请单击 。
如果误删了某个配置,单击“取消”**** 以避免应用更改。

-
删除所有不需要的配置并确认显示了预期的配置后,单击“保存更改”****。
如果在意外删除配置后保存更改,请重新运行配置以更新警报。 有关重新运行使用 GitHub Actions的配置的详细信息,请参阅 重新运行工作流程和作业。
注意
- 如果删除存储库的默认分支的所有 code scanning 配置,则默认分支将保留在“受影响的分支”边栏中,但不会由任何配置分析。
- 如果删除存储库的默认分支以外的任何分支的所有 code scanning 配置,该分支将从“受影响的分支”边栏中删除。