Sincronizando Grande arquivos sem versão Dentro Subversion Caixa
-
05-07-2019 - |
Pergunta
Estamos trabalhando com um repositório Subversion por algum tempo agora para um laboratório de pesquisa e repetidamente foram apresentados com um problema comum:
Queremos versão todo o código, e pequenos pedaços de dados permanentes, mas também temos grandes blobs binários que vivem dentro de diretórios ignorados em checkouts usuário e gostaríamos de tornar mais fácil para os usuários tanto de volta aqueles arquivos de backup e sincronizar-los para que vários usuários podem trabalhar com as bolhas maiores sem ter que copiá-los manualmente entre máquinas ou verificá-las para o repositório (que já tem mais de esse tipo de coisa que é ideal).
Já pensou em usar vários serviços de backup como JungleDisk, pelo menos, torná-lo fácil para os usuários a fazer backup de dados, mas não são realmente concebido para sincronização. Além disso, apenas trabalhando fora do JungleDisk seria inferior a ideal, porque às vezes os arquivos de dados são bastante grandes e esperando por eles para ser armazenada em cache poderia degradar significativamente o desempenho.
Outras alternativas poderia ser ao longo das linhas de fornecimento de cópias de rsync, e apenas usando alguns scripts shell dentro do repositório que os usuários poderiam correr para sincronizar arquivos manualmente (separar checkouts svn / commits), mas seria bom ter esta trabalho com muito esforço mínimo em Mac, Windows e Linux para usuários que não pode ser a mais tecnicamente savvy. Portanto, seria ideal para ter este ser algo que é fácil de configurar (para novos arquivos sem versão), fácil de instalar (menos etapas é melhor) e não requer a intervenção do usuário muito para fazer o sistema funcionar (automático, ou apenas duas vezes clicar em um roteiro seria bom).
Todos os pensamentos ou sugestões?
Solução
Eu faria um script rsync para fazer isso, e em seguida, enrole o binário subversão nele. Provavelmente precisará de mais algum script para instalá-lo em baixa aborrecimento para os usuários finais (embora se você tiver apenas alguns, apenas fazê-lo à mão).
Além disso, se fosse possível, eu tentaria mover esses blobs binários para algum local que não seja dentro de sua árvore de subversão ... que apenas parece ser a pedir sarilhos.
suporte ao Windows é apenas uma dor em todas essas situações. Eu pessoalmente uso python para esta tarefa porque é bastante portátil através de todos esses sistemas.