style.yaml fails due to branch protection

After creating the below workflow file using usethis::use_github_action("style"), my build fails due to branch protection. Not sure what to do to circumvent this. From my limited understanding, I'm gathering from [this GHA Community thread]( Allowing github-actions[bot] to push to protected branch · community · Discussion #25305) that it's not possible?

[Build error]( Remove check_creds() · asadow/megamation@add0a40 (

Run if FILES_TO_COMMIT=($(git diff-index --name-only add0a4077317d6a10b585b9be1f596aa5fef3d4f \
[master b7ec5bf] Style code (GHA)
 8 files changed, 217 insertions(+), 180 deletions(-)
Already up to date.
remote: error: GH006: Protected branch update failed for refs/heads/master.        
remote: error: Changes must be made through a pull request.        
 ! [remote rejected] master -> master (protected branch hook declined)
error: failed to push some refs to ''
Error: Process completed with exit code 1.


# Workflow derived from
# Need help debugging build failures? Start at
    paths: ["**.[rR]", "**.[qrR]md", "**.[rR]markdown", "**.[rR]nw", "**.[rR]profile"]

name: Style

    runs-on: ubuntu-latest
      contents: write
      GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
      - name: Checkout repo
        uses: actions/checkout@v3
          fetch-depth: 0

      - name: Setup R
        uses: r-lib/actions/setup-r@v2
          use-public-rspm: true

      - name: Install dependencies
        uses: r-lib/actions/setup-r-dependencies@v2
          extra-packages: any::styler, any::roxygen2
          needs: styler

      - name: Enable styler cache
        run: styler::cache_activate()
        shell: Rscript {0}

      - name: Determine cache location
        id: styler-location
        run: |
            styler::cache_info(format = "tabular")$location,
            file = Sys.getenv("GITHUB_OUTPUT"),
            append = TRUE,
            sep = ""
        shell: Rscript {0}

      - name: Cache styler
        uses: actions/cache@v3
          path: ${{ steps.styler-location.outputs.location }}
          key: ${{ runner.os }}-styler-${{ github.sha }}
          restore-keys: |
            ${{ runner.os }}-styler-
            ${{ runner.os }}-

      - name: Style
        run: styler::style_pkg()
        shell: Rscript {0}

      - name: Commit and push changes
        run: |
          if FILES_TO_COMMIT=($(git diff-index --name-only ${{ github.sha }} \
              | egrep --ignore-case '\.(R|[qR]md|Rmarkdown|Rnw|Rprofile)$'))
            git config --local "$GITHUB_ACTOR"
            git config --local "$"
            git commit ${FILES_TO_COMMIT[*]} -m "Style code (GHA)"
            git pull --ff-only
            git push origin
            echo "No changes to commit."

are you asking how to turn off the branch protection ?

1 Like

No, as without protection I assume anyone can then push to the main branch. But maybe I misunderstand how that all works.

According to info at About protected branches - GitHub Docs

You can have a bypass list

It seems to me as if that's specific to organizations under GitHub Enterprise.

But I do have access to rulesets. Am I missing something?

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.