Problem
I build an app and use git branches.
Branches sum up, I don't know which branches are already merged into master and I lose overview.
git branch
Solution (Linux)
I need a command that checks if a branch is merged into master and if it is merged, it should get deleted locally.
-
git checkout master
(or whatever branch you want to compare to) -
git branch --merged | egrep -v "(^\*|master|dev)" | xargs git branch -d
Explanation
git branch --merged
: List all branches whose tips are reachable from the specified commit (HEAD if not specified).egrep -v "(^\*|master|dev)"
: Search for all lines that do not start with*
(= the current branch), or don't havemaster
ordev
in it.xargs git branch -d
: Execute the command to delete all found branches from step 2.