A convenient command-line tool helping you keep repositories clean. Supports deletion of both local and remote branches. Detects multiple forms of de-facto merges (rebase merges, squash merges (needs --effort=3), single or range cherry-picks… leveraging git cherry). Supports workflows with multiple release branches, e.g. only delete branches that have been merged to all of master, dev and staging. Quick interactive configuration. Provider agnostic: Works with GitHub, GitLab, Gitea and any other Git hosting. Takes safety seriously. Deletion is a sharp knife that requires care. While git reflog would have your back in most cases, git-delete-merged-branches takes safety seriously. git push is used with --force-with-lease so if the server and you have a different understanding of that branch, it is not deleted. There is no use of os.system or shell code to go wrong.
Features
- Supports deletion of both local and remote branches
- Quick interactive configuration
- Provider agnostic: Works with GitHub, GitLab, Gitea and any other Git hosting
- Takes safety seriously
- Supports workflows with multiple release branches
- Detects multiple forms of de-facto merges