关于 MRVA
使用多仓库变体分析(MRVA),您可以在 Visual Studio Code 中针对 GitHub 上最多 1,000 个仓库的列表运行 CodeQL 查询。
当您对仓库列表运行 MRVA 时,查询会针对每个拥有可供分析的 CodeQL 数据库的仓库执行。GitHub 为数千个公共仓库的默认分支创建并存储最新的 CodeQL 数据库,包括所有使用 CodeQL 进行代码扫描的仓库。
MRVA 如何运行查询
运行 MRVA 时,分析完全在 GitHub Actions 中执行。您无需创建任何工作流,但必须指定 CodeQL for Visual Studio Code 扩展应使用哪个仓库作为控制仓库。随着每个仓库的分析完成,结果会发送到 VS Code 供您查看。
CodeQL 扩展会使用您的库及其所有依赖库构建一个 CodeQL 包。该 CodeQL 包和您选定的仓库列表会被发送到 GitHub 的 API 端点,从而触发控制仓库中的 GitHub Actions 动态工作流。该工作流会启动多个并行作业,以在列表中的仓库上执行 CodeQL 查询,从而优化查询执行。每当一个仓库完成分析,结果会被处理并显示在 VS Code 中。
后续步骤
要开始使用,请参阅 使用多仓库变体分析大规模运行 CodeQL 查询。