如何在GitHub Action中检测仓库指定Tag是否存在?
检测GitHub仓库中特定Tag是否存在的问题
我正尝试检测仓库中是否存在某个特定Tag,以下是我的简化尝试过程:
尝试1
name: Check for Tag on: push jobs: check-tag: runs-on: ubuntu-latest steps: - name: Check for Tag run: | TAG="0.1" if git show-ref --tags --verify --quiet "refs/tags/${TAG}"; then echo "Tag ${TAG} exists" else echo "Tag ${TAG} does not exist" fi
输出结果:Tag 0.1 does not exist
但在本地CLI执行git show-ref --tags --verify --quiet "refs/tags/0.1"时,该Tag实际存在(命令返回退出码0,符合找到Tag时的预期)。
尝试2
name: Check for Tag on: push jobs: check-tag: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Check for Tag run: | TAG="0.2" git show-ref --tags --verify --quiet "refs/tags/${TAG}" exit_code=$? echo ${exit_code} if [[ $exit_code -eq 0 ]]; then echo "Tag ${TAG} exists" else echo "Tag ${TAG} does not exist" fi
由于0.2 Tag不存在,git show-ref返回退出码1,直接导致整个工作流执行失败。
内容的提问来源于stack exchange,提问作者user2650277
相关产品推荐
相关产品推荐

