git branch -r | awk '{print $1}' | egrep -v -f /dev/fd/0 <(git branch -vv | grep origin) | awk '{print $1}' | xargs git branch -d
Explicação dos comandos:
git branch -r
: lista filiais remotasawk '{print $1}'
: embelezar a saída do comando anterioregrep -v -f /dev/fd/0 <(git branch -vv | grep origin)
: imprime a diferença entre ramos remotos e locaisawk '{print $1}'
: embelezar o anteriorxargs git branch -d
: remove ramos locais encontrados no ponto 3
Usando os comandos omitindo o último, você terá uma prévia do que será removido.
Se você gostou da dica, siga-me em: https://twitter.com/niklongstone
Respostas relacionadas:
Remova todos os seus branches locais do git, mas mantenha o mestre