How to delete merged branches on Git and GitHub
Recently at OneLogin we decided to prune and purge all merged branches in one of our large Git repos. Having never had to do this with more then a handful of branches, I had relied on the GitHub branches UI.
This UI is less than ideal when working with over about a dozen branches, so I started looking into scripts to help automate the process.
The best information I found was in this StackOverflow question:
I'll cut right to it.
Delete branches not merged into currently checked out branch on LOCAL
git branch --merged | grep -v "\*" | xargs -n 1 git branch -d
Prune your origin
git remote prune origin
Delete branches not merged into currently checked out branch on ORIGIN
git branch -r --merged | grep -v master | sed 's/origin\//:/' | xargs -n 1 git push origin