用途:glab securefile 用于管理 GitLab 项目中的 CI/CD 安全文件,这类文件存放在项目仓库之外、不纳入版本控制,因此可安全保存敏感信息。支持纯文本和二进制文件,单文件须小于 5 MB,每个项目最多 100 个。
主要能力:create <name> <path> 上传新安全文件;update <name> <path> 用本地文件替换已有安全文件;download 支持按 ID、--id、--name 下载,或用 --all 下载全部(跨所有 API 分页,不限于前 100 条);get <id> 查看文件详情;list 列出项目安全文件;remove 删除文件。
使用方式:命令形式为 glab securefile <command> [--flags],可用 -R/--repo 指定其他仓库(OWNER/REPO、GROUP/NAMESPACE/REPO、完整 URL 或 Git URL)。下载示例:glab securefile download --all --output-dir ./secure-files -R group/project;glab securefile download 1 --path /tmp/secure/file.txt -R group/project。删除示例:glab securefile remove --name signing-certificate.p12 --yes。更新示例:glab securefile update signing-certificate.p12 ./replacement.p12 -R group/project --yes。
限制与注意:get 需要 GitLab 18.0 或更高版本,旧版本请改用 list 或按 ID/名称下载。下载默认启用校验和验证,除非明确接受 --no-verify 或 --force-download 的风险。删除不可恢复,非交互环境必须加 --yes/-y,且删除时位置 ID、--id、--name 只能选一个,组合使用会报错。更新成功后安全文件 ID 会变化,后续流程应按 --name 解析或刷新 ID。下载目标应视为敏感数据,放在版本控制之外,并先确认目标项目。--all 会拒绝可能逃逸输出目录的服务器文件名。绝对路径的 --path 和 --output-dir 均受支持。