Skip to content

Instantly share code, notes, and snippets.

@matthiasbalke
Created February 26, 2021 07:30
Show Gist options
  • Save matthiasbalke/52af1aaa1851529c6802ce90139f0817 to your computer and use it in GitHub Desktop.
Save matthiasbalke/52af1aaa1851529c6802ce90139f0817 to your computer and use it in GitHub Desktop.
git remove local merged branches
# checks whether local branches are merged into target branch
#
# usage:
# merged_branches <remote/target-branch-name>
#
# examples:
# merged_branches # default is master
# merged_branches origin/master
# merged_branches origin/release/9.0
#
merged_branches() {
git branch --merged $1 | egrep -v '(^\*|master|release/)'
}
# deletes local branches which are merged into target branch
#
# usage:
# remove_merged_branches <remote/target-branch-name>
#
# examples:
# remove_merged_branches # default is master
# remove_merged_branches origin/master
# remove_merged_branches origin/release/9.0
#
remove_merged_branches() {
git branch --merged $1 | egrep -v '(^\*|master|release/)' | xargs git branch -d
}
# shortcuts
alias mb="merged_branches origin/master"
alias rmb="remove_merged_branches origin/master"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment