项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 30794
使用教程
环境要求
- 已安装 Docker(使用 Docker 镜像方式运行)
- 如需源码编译,需本机已安装 Go 和 make
- 需要一个待扫描的文件夹或 Git 仓库路径
- 可选:自定义规则配置文件(.gitleaks.toml 或自建 toml)
安装与启动步骤
-
1拉取 Docker 镜像
从 DockerHub 拉取官方镜像,也可改用 ghcr.io 地址,两者命令等价。
docker pull zricethezav/gitleaks:latest -
2验证命令可用
运行 version 命令确认镜像可正常启动,并看到版本号输出。
docker run --rm zricethezav/gitleaks:latest version -
3扫描目录或文件
用 dir 命令扫描目录或文件,注意把宿主机路径换成你的真实待扫描目录。
docker run -v /your/repo:/path zricethezav/gitleaks:latest dir /path -
4扫描 Git 仓库
用 git 命令扫描仓库历史提交与分支中的敏感信息,适合排查旧提交泄露。
docker run -v /your/repo:/path zricethezav/gitleaks:latest git /path -
5指定自定义配置
配置文件按固定优先级加载,也可用 -c 或环境变量传入自建规则文件。
export GITLEAKS_CONFIG="/home/dev/customgitleaks.toml" docker run -v /your/repo:/path -e GITLEAKS_CONFIG ghcr.io/gitleaks/gitleaks:latest git /path -
6输出扫描报告
用 -f 指定 json/csv/junit/sarif 格式,-r 指定报告文件路径。
docker run -v /your/repo:/path zricethezav/gitleaks:latest git -f json -r /path/report.json /path -
7源码编译安装
需要本机已装 Go,克隆仓库后执行 make build 编译出二进制。
git clone https://github.com/gitleaks/gitleaks.git cd gitleaks make build
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
--config / -c | 否 | 指定配置文件路径,优先级最高 | /home/dev/customgitleaks.toml |
GITLEAKS_CONFIG | 否 | 环境变量方式指定配置文件路径 | /home/dev/customgitleaks.toml |
GITLEAKS_CONFIG_TOML | 否 | 环境变量方式直接传入配置文件的完整内容 | cat customgitleaks.toml |
.gitleaks.toml | 否 | 放在目标扫描路径下的默认配置文件 | .gitleaks.toml |
-f, --report-format | 否 | 报告输出格式,支持 json、csv、junit、sarif、template | json |
-r, --report-path | 否 | 报告文件写入路径 | report.json |
如何确认成功
执行 version 命令能打印版本号即安装成功;扫描完成后查看终端输出或 -r 指定的报告文件是否生成。
常见问题
Q:自定义配置文件为什么没生效?
A:加载优先级为:--config/-c > 环境变量 GITLEAKS_CONFIG > 环境变量 GITLEAKS_CONFIG_TOML > 目标路径下的 .gitleaks.toml;四个都没用则走默认配置,请检查是否被更高优先级覆盖。
Q:扫描到密钥后命令为什么返回非 0?
A:默认发现泄露时退出码为 1,可用 --exit-code 修改,CI 流程中需要据此判断是否阻断。
Q:日志里会明文打印密钥吗?
A:默认 --redact 为 100% 即全部打码,也可传 0~100 的百分比只对部分内容打码。
Q:怎么扫描历史提交而不只是当前文件?
A:使用 git 子命令扫描 Git 仓库,它会覆盖历史提交;dir 子命令只扫描目录或文件的当前内容。
Q:必须用 Docker 吗?
A:不是,README 说明还可用 Homebrew、Go 安装,或在 releases 页面下载各平台二进制包。
注意事项
- README 顶部声明项目已 feature complete,后续版本只做安全补丁,新功能转向 Betterleaks 项目
- docker run 中的挂载路径需替换为你本机的真实目录,容器内统一映射为 /path
- 除 DockerHub 外也可使用 ghcr.io/gitleaks/gitleaks:latest 镜像地址
- 配置扩展可链式引用多个配置文件,深度最多为 2 层
核心亮点
- 支持扫描完整 Git 历史,包括已删除的提交,防止历史泄露
- 内置大量常见密钥格式规则,并支持自定义正则,灵活适配
- 可集成到 GitHub Actions、Pre-commit 等 CI/CD 流程,自动化拦截
不足之处
- 正则匹配可能产生误报,需要人工审核结果
- 文档/社区待观察
适用场景
- 开发者在提交代码前用 pre-commit 钩子扫描,防止密钥入库
- 安全团队定期扫描全量 Git 仓库历史,排查历史泄露
- CI/CD 流水线中集成,合并请求时自动检测敏感信息
替代项目
TruffleHog、git-secrets、detect-secrets
上一篇:Bootstrap3D
同类项目推荐
awesome-deep-learning-resource
开源
一站式收藏深度学习论文笔记与优质开源资源,省去全网搜索时间。
个人总结的大模型、Agent、多模态、自然语言处理NLP、计算机视觉CV等方向paper的阅读笔记;···
LIMU-BERT_Experience
开源
用海量IMU数据预训练,让传感器模型开箱即用
LIMU-BERT-X is a sensor foundation model pretrained with 1.43 millions hours of IMU ···
llama.cpp-android-tutorial
开源
手把手教你在安卓手机跑大模型,零基础也能上手
llama.cpp tutorial on Android phone
Chinese-Mixtral
开源
让Mixtral更懂中文,开箱即用的中文MoE模型
中文Mixtral混合专家大模型(Chinese Mixtral MoE LLMs)
awesome-generative-ai
开源
一站式找到生成式AI所有好工具和模型
A curated list of Generative AI tools, works, models, and references
EVE
开源
去掉视觉编码器,直接用像素训练多模态模型,更简单高效。
EVE Series: Encoder-Free Vision-Language Models from BAAI
Awesome-AIGC-Research-Groups
开源
一张清单,快速锁定全球AIGC顶尖研究团队
A Collection of AIGC Research Groups
Emu
开源
一个模型搞定图像视频生成与理解,智源出品
Emu Series: Generative Multimodal Models from BAAI
BioReason
开源
让 AI 读懂 DNA,自动进行多模态生物推理
BioReason: Incentivizing Multimodal Biological Reasoning within a DNA-LLM Model | ···
