I'm trying to update the version in my pom.xml in my maven project with a GitHub (release) action, with the value provided in the UI / Create release tag.
name: Publish package to GitHub Repository
on:
  release:
       types: [created]
jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      - name: Check out Git repository
        uses: actions/checkout@v2
        with:
         fetch-depth: '0'
      - name: Install Java and Maven
        uses: actions/setup-java@v1
        with:
          java-version: 11
      - name: Update version in pom.xml (Release only)
        run: mvn -B versions:set -DnewVersion=${{ github.event.release.tag_name }} -DgenerateBackupPoms=false
      - name: Commit and push changes to pom.
        run: |
          git config --global user.name "GitHub Actions"
          git config --global user.email "no-reply@example.com"
          git add pom.xml
          git commit -m "Bumped version to ${{ github.event.release.tag_name }}"
          git push
      - name: Deploy to Github Package Registry
        env:
          GITHUB_USERNAME: ${{ github.actor }}
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: mvn --settings settings.xml --file pom.xml deploy
However, I get an error:
Run git config --global user.name "GitHub Actions"
[detached HEAD 5ec5465] Bumped version to 1.0.4
 1 file changed, 1 insertion(+), 1 deletion(-)
fatal: You are not currently on a branch.
To push the history leading to the current (detached HEAD)
state now, use
    git push origin HEAD:<name-of-remote-branch>
I don't really understand why this happens. I thought the git checkout would give me a local git repo with the default (main) branch, to which I commit and then push (which should work if there are no other changes?). Also, compering to this answer: https://stackoverflow.com/a/58257219/461499, the only difference seems to be the on config?
What am I doing wrong? (And what should I do instead?)