跳至主要内容

数据库包

创建 CodeQL 数据库的可重定位存档。

谁可以使用此功能?

CodeQL 可用于以下代码库类型

本文档内容

此内容描述了 CodeQL CLI 的最新版本。有关此版本的更多信息,请参阅 https://github.com/github/codeql-cli-binaries/releases

要查看早期版本中此命令可用选项的详细信息,请在终端中使用 --help 选项运行该命令。

概要

Shell
codeql database bundle --output=<output> <options>... -- <database>

描述

创建 CodeQL 数据库的可重定位存档。

一个将数据库的有用部分压缩成 zip 文件的命令。除非用户明确要求包含结果、日志、TRAP 或类似内容,否则此命令只会包含必备组件。

选项

主要选项

<database>

[必填] 要捆绑的 CodeQL 数据库的路径。

-o, --output=<output>

[必填] 输出文件,通常扩展名为“.zip”。

--[no-]include-diagnostics

在捆绑包中包含诊断信息。

v2.16.0 起可用。

--[no-]include-results

在捆绑包中包含任何预计算的查询结果。

--[no-]include-logs

在捆绑包中包含日志目录。

v2.17.6 起可用。

--[no-]include-temp

包含“temp”目录,其中包含任何生成的包、查询和套件。

v2.13.3 起可用。

--[no-]include-uncompressed-source

包含源归档目录的未压缩版本。这对于旧版 CodeQL 插件(如 CodeQL for Eclipse)是必需的。

--name=<name>

捆绑包中顶级目录的名称。如果未指定,则默认为数据库目录的名称。

低级数据集清理选项

--max-disk-cache=<MB>

设置中间查询结果的磁盘缓存可以使用最大空间量。

如果未明确配置此大小,则评估器将尝试使用基于数据集大小和查询复杂性的“合理”缓存空间量。明确设置高于此默认用法的限制将启用其他缓存,这可以加快后续查询的速度。

--min-disk-free=<MB>

[高级] 设置文件系统上的目标空闲空间量。

如果未给出 --max-disk-cache,则如果文件系统上的空闲空间低于此值,则评估器将尽力减少磁盘缓存使用量。

--min-disk-free-pct=<pct>

[高级] 设置文件系统上目标空闲空间的百分比。

如果未给出 --max-disk-cache,则如果文件系统上的空闲空间低于此百分比,则评估器将尽力减少磁盘缓存使用量。

--cache-cleanup=<mode>

选择如何积极地清理缓存。选项包括

clear: 清除整个缓存,将其修剪到新提取数据集的状态

trim (默认): 修剪所有内容,除了明确“缓存”的谓词。

fit: 只需确保磁盘缓存的定义大小限制得到遵守,必要时删除尽可能多的中间文件。

--cleanup-upgrade-backups

删除数据库升级产生的任何备份目录。

常用选项

-h, --help

显示此帮助文本。

-J=<opt>

[高级] 为运行命令的 JVM 提供选项。

(注意,包含空格的选项将无法正确处理。)

-v, --verbose

逐步增加打印的进度消息数量。

-q, --quiet

逐步减少打印的进度消息数量。

--verbosity=<level>

[高级] 将详细程度级别显式设置为错误、警告、进度、进度+、进度++、进度+++ 之一。覆盖 -v-q

--logdir=<dir>

[高级] 将详细日志写入给定目录中的一个或多个文件,生成的文件名包含时间戳和正在运行的子命令的名称。

(要写入您完全控制名称的日志文件,请改用 --log-to-stderr 并根据需要重定向标准错误。)

--common-caches=<dir>

[高级] 控制磁盘上缓存数据的存储位置,这些数据将在 CLI 的多次运行之间持续存在,例如下载的 QL 包和已编译的查询计划。如果未显式设置,则默认为用户主目录中名为 .codeql 的目录;如果该目录尚不存在,则会创建它。

v2.15.2 起可用。