Em nossa empresa, temos um aplicativo que gera um grande número de arquivos de texto todos os dias (cerca de 30.000 arquivos totalizando cerca de 100 megabytes por dia). A maioria dos arquivos é gerada da mesma forma todos os dias, mas alguns arquivos têm diferenças de um dia para o outro. As informações sobre essas diferenças devem ser comentadas e armazenadas. As informações sobre o autor do comentário também precisam ser armazenadas (esses arquivos geralmente são manipulados por cerca de 5 a 10 pessoas)
A solução óbvia para esse problema é usar um repositório git. Pensei em organizar o trabalho da seguinte forma:
- Crie um repositório não-bare em uma pasta de rede e dê aos funcionários acesso a essa pasta. Instale um cliente git para funcionários.
- Adicione todos os arquivos ao repositório e crie um commit de inicialização
- Sobrescreva os arquivos no repositório todos os dias.
- Os funcionários acessarão a pasta de rede todos os dias e farão o commit das alterações nos arquivos.
E essa abordagem geralmente funciona. Mas devido ao enorme tamanho do repositório e ao fato de que a comunicação com o repositório é feita pela rede, é muito lento. Por exemplo, git status
pode levar de 5 a 10 minutos para executar. Outra opção que eu estava pensando é dar aos usuários acesso ssh\rdp ao computador do repositório, o que deve acelerar as coisas. Mas essa opção é muito complicada para os usuários. Como você resolveria esse problema? Eu realmente apreciaria qualquer sugestão que você possa ter, obrigado.