git rev-list 在 GitHub Action 中无法工作

5

我有一个触发器与 github action 关联,它会在创建新的版本发布时启动。

目的是:

  • 找出此次发布所依赖的 Git tag
  • 找出该分支上之前的 Git tag

到目前为止,我已经完成了以下内容:

CURRENT_TAG=${{ github.event.release.tag_name }}
PENULTIMATE_TAG=$(git describe --exact-match --tags `git rev-list --tags --max-count=1 --skip=1`)

这些内容被输出以进行测试。第一个可以正常工作,但第二个总是返回为空。我尝试在本地使用完全相同的命令,它按预期返回第二个最近的标签。

我不知道为什么在 GitHub Actions 中它不起作用。为了进行调试,我删除了 git describe 组件,并确认实际上是 git rev-list 没有返回任何内容。


2
提示:浅克隆。增加其深度或完全禁用浅克隆。 - phd
@phd 啊,找到了,谢谢! - Alex
1个回答

11
需要通过传递fetch-depth选项来获取所有历史记录:
 - uses: actions/checkout@v2
      with:
        fetch-depth: 0

1
真的很有帮助! - jpulikkottil
哈哈,真是个救星!我花了几个小时来调试这个程序呢 xD - shangxiao

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接