Procedimento de Limpeza de Ambiente de Desenvolvimento com Git
Este procedimento tem como objetivo limpar e reorganizar o repositório local de desenvolvimento, removendo branches e tags locais desnecessárias, sincronizando com o repositório remoto e eliminando arquivos e diretórios não rastreados. Ele deve ser executado a partir da raiz do projeto Git, respeitando o tipo de ambiente: Standard (baseado em master) ou Premium (baseado em premium).
Comandos para execução
Para ambiente Standard
git checkout master && \
git branch | egrep -v "master|premium" | xargs git branch -D && \
git tag -d $(git tag -l) && \
git fetch origin && \
git pull && \
git clean -df && \
git gc --prune
Para ambiente Premium
git checkout premium && \
git branch | egrep -v "master|premium" | xargs git branch -D && \
git tag -d $(git tag -l) && \
git fetch origin && \
git pull && \
git clean -df && \
git gc --prune
Explicação dos Comandos
git checkout master
ou git checkout premium
Garante que você esteja em uma branch principal segura antes de remover as outras. Isso evita erros ao tentar deletar a branch atualmente em uso.
git branch | egrep -v "master|premium" | xargs git branch -D
Remove todas as branches locais, exceto master
e premium
. Mantém o repositório limpo e alinhado com o fluxo principal de desenvolvimento.
Observação
Caso o repositório possua apenas a branch master
ou premium
, o comando acima não encontrará nenhuma branch para excluir e, por consequência, o xargs
tentará executar git branch -D
sem argumentos, resultando no erro:fatal: branch name required
Esse erro pode ser ignorado, pois indica apenas que não há branches adicionais para deletar. Neste caso, continue normalmente com os comandos seguintes.
git tag -d $(git tag -l)
git fetch origin
Atualiza as referências remotas do repositório (origin
), trazendo novas branches e tags sem mesclar nada.
git pull
Atualiza a branch atual com as últimas alterações do repositório remoto.
git clean -df
Remove arquivos e diretórios não rastreados pelo Git (por exemplo, arquivos temporários, builds locais etc.).
git gc --prune
Executa uma coleta de lixo no repositório, eliminando objetos órfãos e liberando espaço.
Observações Finais
Atenção
Este processo é destrutivo. Certifique-se de que não há alterações não versionadas ou branches locais importantes, pois tudo que não estiver no repositório remoto será perdido.
Esse procedimento é recomendado especialmente para desenvolvedores que lidam com múltiplas branches e testes locais frequentes, garantindo um ambiente de desenvolvimento limpo, leve e sincronizado.
Nenhum comentário