TL;DR: Delete all local branches merged into master with:
git branch --merged master | grep -v master | xargs git branch -d
List all local branches that are already merged into master
:
git branch --merged master
From the list, grep all branches except master
:
git branch --merged master | grep -v master
Delete all local branches that have been merged to master
:
git branch --merged master | grep -v master | xargs git branch -d
If you want to delete branches merged into dev
while excluding master
:
git branch --merged dev | grep -v 'master\|dev' | xargs git branch -d
Or:
git branch --merged dev | grep -v -e master -e dev | xargs git branch -d