De vez em quando acabamos acumulando várias branches em nossos repositórios, e acabamos lembrando disso somente ao rodar "git branch", não é verdade? Aqui vai uma dica de como excluir uma branch tanto local como remota.
Removendo uma branch local
Para remover uma branch (ramo) local no Git, basta rodar o seguinte comando:
git branch -d nome-da-branch
Caso você receba o seguinte erro:
error: The branch 'teste' is not fully merged.
Isso significa que você possui algum commit recente nesta branch, e excluí-la significaria perder este commit.
Caso queira salvar algum commit, faça um merge com outra branch. Caso contrário, faça um force delete com o parâmetro -D maiúsculo. Cuidado para não perder nada importante.
git branch -D nome-da-branch
Nos comandos acima, -d é um alias para --delete
e -D é um alias para --delete --force
.
Removendo uma branch remota
Para excluir uma branch remota, você pode usar estes dois comandos, mesmo não tendo removido ainda sua branch local.
git push origin --delete nome-da-branch
ou
git push origin :nome-da-branch
Este último também é capaz de remover uma tag.
Nos comandos acima, origin é o atalho para o seu repositório remoto. Caso você tenha outro nome para o repositório remoto, você precisa alterar origin.
Quanto pesa uma branch
Se esse é o seu único motivo para remover alguma branch, provavelmente você não tem com o que se preocupar.
Não existe nenhum comando nativo para sabermos quanto espaço ocupa uma branch, mas se você pensar em termos do funcionamento do git, uma branch é nada mais que um ponteiro para seus commits.
Se você criou uma branch, encheu de arquivos pesados e não mesclou ela com nenhuma outra, ela vai ter o peso destes arquivos, então se ela for inútil, é melhor apagá-la.
Já se uma branch foi mesclada com a master, excluí-la praticamente não vai fazer diferença alguma em termos de espaço.