Created
September 14, 2012 21:47
-
-
Save pierrel/3725120 to your computer and use it in GitHub Desktop.
Delete all merged branches
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Deletes all branches already merged with master | |
git checkout master | |
git pull | |
for BRANCH in `git branch`; do | |
git branch -d ${BRANCH} | |
done | |
# BUG: `git branch` is also returning on top-level files | |
# not too big a problem since "git branch -d" ignores them | |
not sure how/why it listed rcorreia as my username, but this is lamont.
nevermind, I see you're using -d instead of -D
surprised lamont didn't take advantage of the glitch..
Also if you replace the git branch
in the for look with git branch -r
and replace "git branch -d ${BRANCH}" with "git push origin :${BRANCH}" it should wipe your remotes. Use with caution though.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
wouldn't this delete all branches regardless of whether its merged into master?
I think 'git branch --merged master' would return the branches have already been merged.