此版本的 GitHub Enterprise Server 已于以下日期停止服务 2024-07-09. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持。
代码扫描疑难解答
使用 code scanning 分析代码时,可能需要排查意外问题。
错误:“必须为此存储库启用高级安全性才能使用代码扫描”
如果看到此错误,请确保 GitHub Advanced Security 已启用。
在生成的代码中找到的警报
使用 code scanning 分析代码时,你可能希望仅生成要分析的代码。
代码扫描分析耗时过长
可以微调 code scanning 配置,以最大程度地减少分析时间。
编译的语言的自动生成失败
如果自动生成失败,可以将 code scanning 配置为使用编译的语言的特定生成步骤。
无法在专用存储库中启用 CodeQL
若要在专用存储库中使用 code scanning,必须启用 GitHub Advanced Security。
特定语言导致默认设置失败
启用默认设置后,必须成功分析已选择用于分析的所有语言,否则默认设置的配置将失败。
启用默认设置耗时过长
如果认为启用默认设置耗时过长,可以重启该过程。
数据库中的提取错误
可以检查提取错误是否会影响所创建的 CodeQL 数据库的运行状况。
CodeQL 扫描的行数少于预期
如果 CodeQL 分析的代码少于预期,则可能需要使用自定义生成命令。
日志不够详细
如果要提高日志中的详细信息级别,请尝试执行以下步骤。
错误:“生成期间未看到任何源代码”
当 CodeQL 找不到任何源代码时,需要解决此问题以取消阻止 code scanning 分析。
错误:“不是 .ql 文件、.qls 文件、目录或查询包规范”
CodeQL 未能找到为分析指定的查询或查询集之一。
错误:“磁盘空间不足”或错误:“内存不足”
如果系统针对 GitHub Actions 显示其中某一错误,请尝试检查自托管运行器的规格。
结果与预期不同
如果 code scanning 结果与预期不同,可以检查哪些配置处于活动状态。
某些语言未使用 CodeQL 高级设置进行分析
如果某些语言未分析,则可以修改 code scanning 工作流,以添加指定要分析的语言的矩阵。
两个 CodeQL 工作流
如果看到两个名为“CodeQL”的工作流,那么其中一个工作流可能是预先存在的 CodeQL 工作流文件(在默认设置下被禁用)。
不确定是什么触发了工作流运行
如果不知道是什么触发了分析,则调查 工具状态页 或查看上次扫描的日志。
警告:“此工作流检测到 1 个问题:不再需要 git checkout HEAD^2”
如果看到此警告,应更新工作流以遵循当前的最佳做法。