"Branches Cleaner" automatically deletes inactive and merged branches, keeping your tree organized in GitHub repos. Let it clean for you!
MIT License
This GitHub Action automatically cleans up branches in a repository, deleting closed branches without merges, merged branches, and inactive branches after a specified period in days. You can specify the base branches or protected branches that should not be deleted.
base_branches
Required. Comma-separated string of the base branches that you want to keep. For example: main,develop
.
token
Required. Token to authenticate with the GitHub API.
days_old_threshold
Optional. Number of days of inactivity to remove inactive branches. Default is 7
.
This GitHub Action can be triggered by different events offered by GitHub, depending on the needs of each team or individual. In the following example, a schedule trigger is used to run the action every day at midnight:
name: Branches Cleaner
on:
schedule:
- cron: "0 0 * * *"
jobs:
cleanup-branches:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: GitHub Branch Cleaner
uses: mmorenoregalado/[email protected]
with:
base_branches: develop,master
token: ${{ secrets.GITHUB_TOKEN }}
days_old_threshold: 7
Refer to the official GitHub documentation for more information on the different events that can be used to trigger GitHub Actions.
If you encounter an error with exit code 127 when running this action, it may be due to restrictions on workflow runs in your repository settings. To resolve this issue, please check if the action is allowed to run:
To use the latest version:
Click on the following link http://bit.ly/3zgLxHf. This will redirect you to the official GitHub Action Page
Then click on Use latest version
:
Finally replace the text in the GitHub Action YAML file in your .git/workflows/ folder.
With that you will have the latest version of Branches Cleaner installed.
This action is open to contributions. If you find any issues or bugs, feel free to open an issue or pull request.
This project is licensed under the MIT License. See the LICENSE file for details.