# Troubleshooting

## semantic-release

### semantic-release breaks when branch protection is applied

Applying branch protection to the `main` or `master` branch can break semantic-release in our auto-release GitHub workflows by preventing the library from pushing changes to the protected branch.

This can be fixed by following these instructions: <https://github.com/semantic-release/github/issues/175#issuecomment-757448750>

Two things I needed to change to make treetracker-admin-client work were:

1. Pass `persist-credentials: false` to `actions/checkout@v2` as a `with:` value
2. Create a personal access token and assign it to a repo secret named `GH_TOKEN` that is passed to the semantic-release env.
