注意
此内容描述了 CodeQL CLI 的最新发布版本。有关此版本的更多信息,请参阅 https://github.com/github/codeql-cli-binaries/releases。
要查看早期版本中此命令可用的选项详情,请在终端中使用 --help 选项运行该命令。
概要
codeql bqrs diff <options>... -- <file1> <file2>
codeql bqrs diff <options>... -- <file1> <file2>
描述
计算两个结果集之间的差异。
选项
主要选项
<file1>
【必填】要比较的第一个 BQRS 文件。
<file2>
【必填】要比较的第二个 BQRS 文件。
--left=<file>
将仅在 file1 中出现的行写入此文件。
--right=<file>
将仅在 file2 中出现的行写入此文件。
--both=<file>
将同时存在于 file1 和 file2 中的行写入此文件。
--retain-result-sets=<result-set>[,<result-set>...]
以逗号分隔的结果集名称列表,直接复制到相应的输出而不进行比较。如果提供了 --both,则该输出取自 file1。默认值为 'nodes,edges,subpaths',以简化路径问题结果的处理。
--result-sets=<name1>,<name2>
仅比较指定的结果集。格式为 file1 中的结果集名称,file2 中的结果集名称。两个结果集必须兼容。此选项可重复使用。
--[no-]compare-internal-ids
【高级】在比较时包含内部实体 ID。实体 ID 在不同数据库之间不可比,但对于来源于同一数据库的结果集,这可以帮助区分具有相同位置和标签的实体。
常用选项
-h, --help
显示此帮助文本。
-J=<opt>
[高级] 为运行该命令的 JVM 提供选项。
(请注意,包含空格的选项将无法正确处理。)
-v, --verbose
逐步增加打印的进度信息数量。
-q, --quiet
逐步减少打印的进度信息数量。
--verbosity=<level>
[高级] 将详细程度显式设置为以下之一:errors、warnings、progress、progress+、progress++、progress+++。会覆盖 -v 和 -q。
--logdir=<dir>
[高级] 将详细日志写入指定目录中的一个或多个文件,文件名会包含时间戳和运行的子命令名称。
(若希望自行完全控制日志文件名,请改用 --log-to-stderr 并按需重定向 stderr。)
--common-caches=<dir>
[高级] 控制磁盘上缓存数据的位置,这些数据会在 CLI 的多次运行之间保持,例如已下载的 QL 包和已编译的查询计划。如果未显式设置,则默认使用用户主目录下名为 .codeql 的目录;如该目录不存在,则会自动创建。
自 v2.15.2 起可用。