git rev-list 在 github 操作中不起作用

Ale*_*lex 5 git github github-actions

我有一个在创建版本时触发的 github 操作。

目标是:

  • 查找该版本所基于的标签
  • 查找该分支上的上一个标签

到目前为止,我有这个:

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

然后将这些内容回显以进行测试。第一个工作正常,但第二个总是返回空。我在本地尝试了完全相同的命令,它返回第二个最新标签,如预期的那样。

我不知道为什么它在 github 操作中不起作用。为了调试,我删除了该git describe组件,确认实际上 gitrev-list没有返回任何内容。

Pet*_*eng 12

需要通过传递 fetch-depth 选项来获取所有历史记录:

 - uses: actions/checkout@v2
      with:
        fetch-depth: 0
Run Code Online (Sandbox Code Playgroud)