如何在GitHub Actions中将斜杠替换为短横线并设置环境变量
解决方案
你可以直接利用GitHub Actions的表达式内置函数replace来替换分支名中的斜杠为连字符,直接在env块中配置:
name: CI/CD mktplc-catalog on: push: env: BRANCH_NAME: ${{ github.head_ref || github.ref_name }} MODIFIED_BRANCH_NAME: ${{ replace(github.head_ref || github.ref_name, '/', '-') }} # 后续步骤...
说明
github.head_ref || github.ref_name:兼容PR推送和直接分支推送两种场景,能正确获取当前分支名replace(..., '/', '-'):将分支名中的所有/字符替换为-,针对分支名feature/add-foo,处理后会得到feature-add-foo
备选方案(适合更复杂的字符处理)
如果需要处理更多特殊字符(比如下划线、点号等),可以通过run步骤来设置环境变量:
name: CI/CD mktplc-catalog on: push: env: BRANCH_NAME: ${{ github.head_ref || github.ref_name }} jobs: build: runs-on: ubuntu-latest steps: - name: Set modified branch name run: echo "MODIFIED_BRANCH_NAME=$(echo "${BRANCH_NAME}" | tr '/' '-')" >> $GITHUB_ENV # 后续步骤可以直接使用${{ env.MODIFIED_BRANCH_NAME }}
内容的提问来源于stack exchange,提问作者Amin Ba
相关产品推荐
相关产品推荐

