Delete merged branch
Want to see more badges? Click here!
A GitHub app built with Probot that automatically deletes a branch after it's merged. That's it, enjoy!
Running it locally
First, follow these instructions for making your own GitHub app. Give your app the following permissions:
- Repository contents: Read & Write.
- Pull requests: Read
Then, clone the repo:
git clone firstname.lastname@example.org:SvanBoxel/delete-merged-branch.git
.envand set the right environment variables as here
Now, install app dependencies and run it:
# Install dependencies npm install # Run the bot npm start
Running with Docker
Make sure you have docker installed.
Follow the same steps as running locally to set up the GitHub app and environment files.
Build the docker image:
docker build -t delete-merged-branch .
Run the docker image:
docker run -i -t --rm \ -v "$(pwd)/.env:/app/.env" \ -p 3000:3000 \ delete-merged-branch
Alternate Example: Running test in the docker image
docker run -i -t --rm \ -v "$(pwd)/.env:/app/.env" \ -v "$(pwd)/sample-data:/sample-data" \ delete-merged-branch \ receive /app/index.js -p /sample-data/event.json
How it works
This GitHub app listens to the
pull_request.closed webhook. If a pull request is closed and the connected branch is merged, it will delete the branch.
The optional app configuration YAML file should be saved as
.github/delete-merged-branch-config.yml. At the moment it supports the following options:
exclude(array) - list of branches that should not be automatically deleted after a merge. Wildcards supported.
exclude: - development - qa - feature-*
CI (Travis) is in charge of releasing new versions of the GitHub Application to Now. On every new commit to master we run semantic-release to determine whether the major/minor/patch version should be incremented. If so, we update the version running in production.
Running in GitHub actions
This app is compatible with GitHub Actions. You need to create a workflow that is triggered on the
pull_request event for this. Then, you use this repo for the action. (
SvanBoxel/delete-merged-branch@master). Don't forget to check the
GITHUB_TOKEN secret. That's it.
If you have suggestions for how this GitHub app could be improved, or want to report a bug, open an issue! We'd love all and any contributions.
For more, check out the Contributing Guide.