#!/bin/sh git remote prune origin branch_list=$(git branch -r | grep -v HEAD | grep -v master | sed s:origin/::) until [ -z "$1" ] do branch_list=$(echo "$branch_list" | grep -v $1) shift done for branch in $branch_list do git push origin :heads/${branch} done