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

GitHub Action中执行git log获取分支首条提交信息报错如何解决

问题原因

GitHub Actions 官方的 actions/checkout 动作默认执行浅克隆,默认拉取深度仅为1,且不会拉取工作流触发分支之外的其他分支提交记录,因此Git无法识别main和myfeaturebranch两个分支的提交区间,触发未知修订版本报错。

解决步骤

  • 第一步:调整checkout动作配置,拉取全量提交历史
    修改你的工作流yaml文件中checkout步骤的参数,拉取完整提交记录而非浅克隆:
- uses: actions/checkout@v4
  with:
    fetch-depth: 0
  • 第二步:执行git log前先拉取全部分支的最新远程记录
    在run脚本中执行git log命令前,先运行如下命令同步所有远程分支到本地:
    git fetch origin +refs/heads/*:refs/remotes/origin/*
  • 第三步:修改git log命令指定远程分支前缀,避免歧义
    将原命令中的分支名替换为远程分支的完整引用,命令如下:
    git log origin/main..origin/myfeaturebranch --reverse --pretty=%s

执行完以上调整后即可正常获取目标分支的提交信息列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 14:24:04