bin/git-remove-merged-branches

18 lines
No EOL
404 B
Bash
Executable file

#!/bin/bash
REMOTE="${1:-origin}"
BRANCH="${2:-master}"
MERGED_BRANCHES=$(git branch -r --merged |
grep "\b${REMOTE}/" |
grep -vE "HEAD|master|${BRANCH}" |
xargs -L1 |
sed -e "s/${REMOTE}\///")
if [[ -n "$MERGED_BRANCHES" ]]; then
echo "Removing merged branches:"
echo "$MERGED_BRANCHES"
echo "$MERGED_BRANCHES" | xargs git push "$REMOTE" --delete
else
echo "No branches to remove"
fi