Depois de `chown -R`, o git fica super lento

10

Eu tenho um projeto GIT enorme com vários sub-módulos GIT dentro. Alterei recursivamente a propriedade ( chown -r) de rootpara meu usuário para cada arquivo no meu projeto.

Agora, qualquer comando git leva muito tempo para ser concluído e parece usar 99% da CPU. Qual é o problema?

eu fiz sudo chown -R my_user my_project/

ATUALIZAR

Isso parece não estar apenas relacionado ao GIT; outros comandos do terminal também levam muito tempo. topmostra-me 100% de uso do git por 15 segundos, em vez dos habituais 0-1 segundos.

lukas.pukenis
fonte
1
não é seu chown -rcomando.
AB
@AB, por favor, elabore mais.
Lukas.pukenis
1
gitnão se importa com quem possui os arquivos, desde que possa acessá-los.
AB
3
Assista a saída de topou htopas atividades de E / S.
AB
1
Apenas um tiro no escuro: você disse maciço ; talvez antes de você ter em cache arquivos que agora, após a mudança de propriedade, não são mais vistos como o mesmo ... ou algo como nepomuk / akonadi / _updatedb_ está indexando tudo como novo. Verifique com top htop...
Hastur

Respostas:

12

Com o comando

sudo chown -R my_user my_project/

você alterou todos os arquivos em um grande repositório (como você disse); portanto, seu indexador de arquivos KDE / GNOME / Unity tem muito trabalho agora. Dê tempo ao processo para concluir seu trabalho. Vá tomar um café ;)

Para assistir ao que está acontecendo da perspectiva de entrada / saída, instale iotopvia:

sudo apt-get install iotop

e observe a saída de:

sudo iotop

AB
fonte
Por quê? gitverifique apenas os modos.
Muru
Essa provavelmente é a razão. É o único em que consigo pensar também. Também gosto de café, então já fiz um para mim :))
lukas.pukenis
@ lukas.pukenis E sobre o café e top, htopresposta? Quem está desperdiçando seus recursos? :-) Lembre-se de que você sempre pode excluir caminhos do indexador de arquivos e adicionar novamente quando for comer ou dormir!
Hastur
@Hastur quando digito como se git statustivesse 100% de uso da CPU por 15 0..1segundos, em vez de segundos. A memória não é um problema e a atividade de E / S é baixa: /
lukas.pukenis
2
@ lukas.pukenis Não devo afirmar isso tão facilmente, sem dúvida, como você faz: se existem muitos outros processos que estão abrindo / bloqueando esses arquivos (lembre-se da palavra mágica maciça ), você pode precisar de mais tempo do que antes. Verifique e atualize quem está usando seu HDD e o tempo de CPU. Ninguém pode encontrar daqui a resposta e está lá. Boa caçada e café. Aliás, se você pausar / parar o indexador e quando você der o comando, é mais rápido que você se sentirá culpado. :-) Boa caçada e café ...
Hastur