Mantenha seu diretório git limpo com `git clean` e` git trash`

Você tem seu diretório git cheio de arquivos não rastreados e ele começa a incomodá-lo quando você seleciona as alterações para commit? Bem, eu tenho duas dicas para você!

ficar limpo

Este é um comando interno para limpar os arquivos não rastreados. Tenha cuidado com este, ele exclui arquivos permanentemente!

Sempre adicione -nou --dry-runopções para visualizar o dano que você fará! ( fonte )

  • Se você apenas limpar arquivos não rastreados, execute git clean -f
  • Se você também deseja remover diretórios, execute git clean -f -d
  • Se você deseja apenas remover arquivos ignorados, execute git clean -f -X
  • Se você deseja remover arquivos ignorados e não ignorados, execute git clean -f -x

Observe que há -f/ --forceopção em cada exemplo, isso é devido à configuração padrão do git : Se a variável de configuração git clean.requireForce não for definida como false, git clean se recusará a executar a menos que seja fornecido -f ou -n.

lixo git

Alternativa suave para o git clean. Move todos os arquivos não testados para o diretório .trash para revisão posterior.

Primeiro, para que esse comando funcione, você precisa adicionar o .trashdiretório ao local ou global .gitignore . Se você não fizer isso git trash, tentará remover a .trashpasta também.

echo ".trash" >> .gitignore

Agora adicione o trashatalho git à sua lista de aliases globais:

git config --global alias.trash '!mkdir -p .trash && git ls-files --others --exclude-standard | xargs mv -f -t .trash'

E pronto. Agora você pode executar git trashem sua raiz do repositório git e todos os arquivos não testados serão movidos para o .trashsubdiretório.

Respostas relacionadas:

Remova todos os seus branches locais do git, mas mantenha o mestre