如何从 github 操作的分支名称中删除特殊字符

How to remove special characters from a branch name on github actions

我的分支名称是 AKA-2120

我将其用作获取分支名称的工作。

  extract_branch_name:
    runs-on: ubuntu-latest
    steps:
      - name: Extract branch name
        shell: bash
        run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
        id: extract_branch
    outputs:
      branch: ${{ steps.extract_branch.outputs.branch }}

但我实际需要输出的是 aka2120

有没有办法删除特殊字符并降低分支名称?

有几种方法可以解决您的问题。 一种方法是使用 Marketplace 中的现有操作:

- uses: mad9000/actions-find-and-replace-string@2
  id: findandreplace
  with:
    source: ${{ github.ref }}
    find: '-'        
    replace: ''
- uses: ASzc/change-string-case-action@v2
  id: lowercase
  with:
     string: ${{ steps.findandreplace.outputs.value }}
- name: Get the above output
  run: echo "The replaced value is ${{ steps.lowercase.outputs.lowercase }}"

如果您只需要 bash 公式,那将有效:

echo ${GITHUB_REF#refs/heads/} | tr "[:upper:]" "[:lower:]" | sed -e 's/-//g'