首页 > 解决方案 > git rev-list 在 github 操作中不起作用

问题描述

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

目标是:

到目前为止,我有这个:

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

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

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

标签: gitgithubgithub-actions

解决方案


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

 - uses: actions/checkout@v2
      with:
        fetch-depth: 0

推荐阅读