Você não pode simplesmente verificar todos os arquivos em um local diferente da sua máquina e excluir a versão antiga?
Nifle 14/09/11
1
Com certeza eu posso, mas não existe uma maneira mais simples?
RoflcoptrException
Respostas:
55
Se você o ignorar, use git clean -xf. Você pode fazer git clean -dfisso, mas isso também removerá diretórios não rastreados. Use -npara uma corrida a seco.
-xfirá excluir e os arquivos ignorados e provavelmente não é isso que você deseja. Use -nfe continue com cuidado. Veja: stackoverflow.com/questions/61212/…
Mr_and_Mrs_D
2
Lembre-se, este pode remover as pastas de ambiente / IDE (por exemplo .vagrant ou .idea (phpstorm))
timhc22
1
CUIDADO! arquivos gitignored serão limpos para sempre. -100
Pode fazer sentido adicionar o significado desse comando para tornar essa resposta independente.
NN
5
Abordagem interativa do usuário:
git clean -i -fd
Remove .classpath [y/N]? N
Remove .gitignore [y/N]? N
Remove .project [y/N]? N
Remove .settings/ [y/N]? N
Remove src/com/amazon/arsdumpgenerator/inspector/ [y/N]? y
Remove src/com/amazon/arsdumpgenerator/manifest/ [y/N]? y
Remove src/com/amazon/arsdumpgenerator/s3/ [y/N]? y
Remove tst/com/amazon/arsdumpgenerator/manifest/ [y/N]? y
Remove tst/com/amazon/arsdumpgenerator/s3/ [y/N]? y
-i para interativo
-f para o arquivo
-d para o diretório
Nota: Adicione -n ou --dry-run para verificar apenas o que ele fará.
Há uma sutileza que vale a pena mencionar sobre git clean -farquivos e diretórios não rastreados. Se você tiver um diretório não rastreado que contenha arquivos que, a fortiori, não sejam rastreados, git clean -fNÃO excluirá esses arquivos não rastreados.
Em outras palavras, nem sempre é o caso que git clean -fexcluirá todos os arquivos não rastreados. Uma explicação melhor git clean -fé que ele exclui todos os arquivos não rastreados que não estão em diretórios não rastreados.
git clean -f -ddeve ser usado para excluir arquivos não rastreados que estão em diretórios não rastreados e parece não haver maneira de excluir todos os arquivos não rastreados sem também excluir diretórios não rastreados que contêm apenas arquivos não rastreados.
Use git clean -f -d -npara REALMENTE ver o que você deseja fazer para restaurar seu diretório de trabalho para o que seria sem arquivos não rastreados. Então use git clean -f -dpara fazer isso.
Respostas:
Se você o ignorar, use
git clean -xf
. Você pode fazergit clean -df
isso, mas isso também removerá diretórios não rastreados. Use-n
para uma corrida a seco.Veja a limpeza não rastreada
fonte
-xf
irá excluir e os arquivos ignorados e provavelmente não é isso que você deseja. Use-nf
e continue com cuidado. Veja: stackoverflow.com/questions/61212/…fonte
Abordagem interativa do usuário:
-i para interativo
-f para o arquivo
-d para o diretório
Nota: Adicione -n ou --dry-run para verificar apenas o que ele fará.
fonte
Há uma sutileza que vale a pena mencionar sobre
git clean -f
arquivos e diretórios não rastreados. Se você tiver um diretório não rastreado que contenha arquivos que, a fortiori, não sejam rastreados,git clean -f
NÃO excluirá esses arquivos não rastreados.Em outras palavras, nem sempre é o caso que
git clean -f
excluirá todos os arquivos não rastreados. Uma explicação melhorgit clean -f
é que ele exclui todos os arquivos não rastreados que não estão em diretórios não rastreados.git clean -f -d
deve ser usado para excluir arquivos não rastreados que estão em diretórios não rastreados e parece não haver maneira de excluir todos os arquivos não rastreados sem também excluir diretórios não rastreados que contêm apenas arquivos não rastreados.Use
git clean -f -d -n
para REALMENTE ver o que você deseja fazer para restaurar seu diretório de trabalho para o que seria sem arquivos não rastreados. Então usegit clean -f -d
para fazer isso.fonte