Branch-Wildwuchs ist real
Nach sechs Monaten kann git branch Dutzende toter Branches auflisten.
Gemergten Branches auflisten
git checkout main
git pull
git branch --merged
git branch --no-merged
Bulk-Loschen gemergter Branches
git branch --merged main | grep -v -E '^\\*|^\\s*(main|master|develop)$' | xargs -n 1 git branch -d
Veraltete Remote-Tracking-Branches prunen
git fetch --prune
git config --global fetch.prune true
Branches ohne Upstream finden
git branch -vv | grep -v origin/
git for-each-ref --format='%(refname:short) %(upstream)' refs/heads
Branches mit verschwundenem Remote erkennen
git fetch --prune
git branch -vv | awk '/: gone]/{print $1}'
Ein Cleanup-Alias
git config --global alias.cleanup '!git fetch --prune && git branch --merged main | grep -v -E "^\\*|^\\s*(main|master|develop)$" | xargs -n 1 git branch -d'
Reflog ist Ihr Sicherheitsnetz
git reflog | grep accidentally-deleted
git checkout -b accidentally-deleted <sha>