Fastlane的changelog_from_git_commits在Github Workflow运行时始终为空如何解决
问题核心原因
GitHub Actions 官方的 actions/checkout@v2 步骤默认执行浅克隆,只会拉取最新的 1 条提交记录,你配置中指定的起始提交哈希 9025d4f 不在本地的 Git 提交历史范围内,因此 changelog_from_git_commits 无法匹配到两个提交之间的变更记录,返回空值。
解决方案
修改你的 Workflow 配置中的 actions/checkout 步骤,添加 fetch-depth 参数:
- 如果需要拉取仓库全部提交历史,设置
fetch-depth: 0 - 如果已知两个提交之间的提交数量小于N,设置
fetch-depth: N即可,拉取速度更快
修改后的checkout步骤示例:
- uses: actions/checkout@v2 with: fetch-depth: 0
可选验证步骤
可以在执行fastlane命令前添加一步打印提交历史,确认已拉取到目标提交:
- name: 验证Git提交历史 run: git log --oneline
执行后查看日志中是否存在你指定的 9025d4f 提交记录,存在即可正常读取变更日志。
内容的提问来源于stack exchange,提问作者dotGitignore
相关产品推荐
相关产品推荐

