Bash

Clean Up Merged Branches

admin by @admin ADMIN
1d ago
May 31, 2026
Public
0 0 up · 0 down Sign in to vote
Delete every local branch that's been merged to main. Filters out main/master and the current branch as a safety net.
Bash
Raw
# Show what would be deleted first — always
git branch --merged main | grep -vE "^\*|main|master|develop"

# Delete them
git branch --merged main | grep -vE "^\*|main|master|develop" | xargs -n1 git branch -d

# Also prune stale remote-tracking branches
git fetch --prune

# Aggressive: delete branches whose upstream is gone (after a rebase + force-push)
git branch -vv | grep ': gone]' | awk '{print $1}' | xargs -n1 git branch -D
Tags

Save your own code snippets

Create a free account and build your private vault. Share publicly whenever you want.