用于检测 GitHub 和 GitLab 组织、仓库与成员安全配置问题的命令行扫描工具。
github/gh-actions-lock
一款 GitHub CLI 扩展,将工作流使用的所有 Action 锁定到确切提交并校验锁文件。
- Star
- 302
- Fork
- 23
- 未关闭 Issue
- 33
- 最近提交
- 前天
这是什么?
gh-actions-lock 是一个 GitHub CLI 扩展,用于生成并校验 GitHub Actions 的依赖锁文件。它会解析工作流中直接和间接引用的所有 Action,将每个 Action 实际对应的提交写入 .github/workflows/actions.lock,使标签或分支的移动无法悄悄改变 CI 的执行内容。
该工具提供多种模式:修复模式用于生成或更新锁文件;relock 模式可将 main、v4 等浮动引用推进到上游的最新提交;verify 模式用于 CI,执行与修复相同的检查;verify-local 则是离线模式,适合 pre-commit 钩子,用于确认每个 uses: 都有锁文件记录。它支持 github.com 和数据驻留的 GitHub Enterprise Cloud,不支持 GitHub Enterprise Server。
项目也列出了已知限制:被其他仓库调用的可复用工作流、未带摘要的容器镜像不会被锁定,本地 ./ 形式的 Action 不会被跟踪。
核心功能
- 01将直接和间接引用的 GitHub Actions 锁定到 actions.lock 中的确切提交。
- 02提供用于 CI 的 verify 模式,以及用于 pre-commit 的离线 verify-local 模式。
- 03可将 main、v4 等浮动引用更新为上游的最新提交。
- 04支持 github.com 和数据驻留的 GitHub Enterprise Cloud。
- 05通过 --json 输出机器可读的结果。
适用场景
- 在仓库中锁定 Action 版本,使 CI 运行的是经过审查的提交。
- 在 Pull Request 检查中加入锁文件校验步骤。
- 在提交工作流改动前运行离线覆盖率检查。
快速上手
- 1
安装 GitHub CLI 扩展
gh extension install github/gh-actions-lock - 2
在仓库检出目录中固定所有 action 并生成锁文件
gh actions-lock - 3
暂存工作流目录,使锁文件纳入源码管理
git add .github/workflows/
使用前须知
- 需要已通过身份验证的 gh CLI。
- 不支持 GitHub Enterprise Server。
- 从其他仓库调用的可复用工作流不会被锁定。
- 没有 @sha256 摘要的容器镜像会产生警告且不会被锁定。
收录于专题
标签
常见问题
- gh-actions-lock 是什么?
- 一款 GitHub CLI 扩展,将工作流使用的所有 Action 锁定到确切提交并校验锁文件。 gh-actions-lock 是一个 GitHub CLI 扩展,用于生成并校验 GitHub Actions 的依赖锁文件。它会解析工作流中直接和间接引用的所有 Action,将每个 Action 实际对应的提交写入 .github/workflows/actions.lock,使标签或分支的移动无法悄悄改变 CI 的执行内容。
- gh-actions-lock 可以免费使用吗?用的什么许可证?
- gh-actions-lock 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- gh-actions-lock 还在维护吗?
- 活跃维护中。gh-actions-lock 最近一次提交是在 2026年11月6日。
- gh-actions-lock 适合用来做什么?
- 在仓库中锁定 Action 版本,使 CI 运行的是经过审查的提交。 在 Pull Request 检查中加入锁文件校验步骤。 在提交工作流改动前运行离线覆盖率检查。
- gh-actions-lock 怎么安装和运行?
- 安装 GitHub CLI 扩展: gh extension install github/gh-actions-lock 在仓库检出目录中固定所有 action 并生成锁文件: gh actions-lock 暂存工作流目录,使锁文件纳入源码管理: git add .github/workflows/
- 在哪里获取 gh-actions-lock?
- 源代码和安装说明在 GitHub 上:https://github.com/github/gh-actions-lock
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一款用 Go 编写的命令行工具,基于 OSV 漏洞数据库检查项目依赖和容器镜像中的已知安全漏洞。
一个命令行工具,可将 GitHub Actions 和可复用工作流固定到完整提交 SHA,并支持更新和校验版本注释。
开源的密钥与环境变量管理工具,提供网页面板、命令行工具,并可同步到 GitHub。
面向 GitHub Actions runner 的 CI/CD 安全代理,监控出站网络、文件写入和进程行为,用于发现供应链攻击。
一种签名的发布清单,让安装器和包管理器能验证并选出适合当前系统的二进制产物。