You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将GitHub Action固定到特定SHA?及SHA查询方法咨询

如何查找GitHub Action对应的提交SHA并固定使用

为什么要固定到SHA

将Action固定到完整长度提交SHA
将Action固定到完整长度提交SHA是目前实现Action不可变发布的唯一方式。固定到特定SHA有助于降低恶意攻击者在Action仓库中植入后门的风险,因为攻击者需要为有效的Git对象负载生成SHA-1碰撞。选择SHA时,应验证其来自Action的官方仓库而非分支。

查找Action SHA的两种方法

方法一:通过GitHub网页端查找

拿你提到的github/codeql-action/upload-sarif@v3举例:

  • 打开该Action的官方仓库页面(比如github/codeql-action的GitHub仓库)
  • 在页面顶部的分支/标签下拉菜单中,选中你正在使用的版本标签(比如v3)
  • 点击页面上的「Commits」进入提交记录页,找到该标签对应的最新提交
  • 点击提交记录右侧的复制按钮,即可获取完整的40位SHA值

方法二:用Git命令行获取

如果本地克隆了该Action的仓库:

  • 克隆仓库:git clone https://github.com/github/codeql-action.git
  • 切换到目标标签:git checkout v3
  • 执行命令获取完整SHA:git rev-parse HEAD
    • 输出的40位字符串就是你需要的SHA

替换成固定SHA的用法

找到SHA后,把Workflow文件里的Action引用从标签格式改成SHA格式即可,示例如下:

- uses: github/codeql-action/upload-sarif@abc123def456ghi789jkl012mno345pqr678stu901vwx

(注:上述SHA为示例,实际需替换为你找到的完整40位SHA值)

内容的提问来源于stack exchange,提问作者benhorgen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 07:32:43