Existem sistemas de controle de versão por aí particularmente bons (ou ruins) para lidar com arquivos grandes? Nada muito louco, mas de várias centenas de megabytes a um gigabyte, digamos.
Atualmente, temos a subversão em vigor, mas há alguns murmúrios sobre ela não ser ideal para esse fim. Eu não sou desenvolvedor e não sei quão objetivos eles estão sendo, então pensei em fazer uma pesquisa rápida da comunidade para obter informações extras.
Estou interessado no comportamento ou na adequação dessas soluções VCS do ponto de vista dos sistemas e do ponto de vista do usuário.
TIA.
version-control
DictatorBob
fonte
fonte
Respostas:
Outra opção feita para fluxos de trabalho criativos e multimídia é o AlienBrain, que agora pertence à Avid. É usado por muitos estúdios de jogos para controlar a versão dos ativos e códigos do jogo.
http://www.alienbrain.com/
Pode não ser a melhor solução, se você não estiver lidando com recursos de mídia.
fonte
Você verá que eles são muito importantes quando se trata de arquivos binários.
Os murmúrios que você ouviu provavelmente se originam da noção de que os binários de controle de versão estão um pouco em desacordo com o poder do controle de versão. Os arquivos binários não podem ser diferenciados ou mesclados; portanto, eles são tratados como cópias estúpidas. O arquivo inteiro é substituído a cada pequena alteração.
Isso não quer dizer que você pode não versão arquivos binários de controle ou de fato que não é útil para você a fazê-lo. Se você tiver o requisito de reverter um arquivo para a versão que você confirmou ontem. Nesse caso, serviu para você.
Embora você possa encontrar uma solução de armazenamento com instantâneos, é melhor e mais eficiente.
fonte
Parece que o Boar atenderia às suas necessidades. É o controle de versão para arquivos binários grandes, como vídeos ou imagens.
fonte
A grande maioria dos que precisam lidar com muitos arquivos binários (por exemplo, jogos) costuma usar forçosamente, às vezes com uma camada sobre ele.
fonte
git-anexo "permite gerenciar arquivos com o git, sem verificar o conteúdo do arquivo no git. Embora isso possa parecer paradoxal, é útil ao lidar com arquivos maiores do que o git atualmente pode manipular facilmente, seja devido a limitações de memória, tempo ou disco espaço."
fonte
A Adobe oferece o Version Cue CS4, desenvolvido para projetos de multimídia. Você pode querer verificar isso.
fonte
Acredito que o Bazaar lida com arquivos binários muito bem, isso parece documentado aqui (4.1). Suponho que isso depende se você deseja gastar dinheiro ou não, pois a documentação declara que existem ferramentas melhores por aí (no entanto, não as nomeia).
fonte
A página da Wikipedia para o Subversion também afirma que ele suporta arquivos binários, embora eu não tenha experiência pessoal com isso, por isso não posso comentar como funciona.
fonte
Se, e é muito importante, você estiver usando o software Autodesk (Maya, Autocad, Inventor, etc ...). Então existe o Autodesk Vault .
Eu descobri isso recentemente no trabalho. Não é gratuito, mas é aparentemente o único VCS que funciona nos arquivos de ativos de mídia da Autodesk.
No entanto, ele é realmente adequado apenas para rastrear alterações nos arquivos que podem ser inspecionados; portanto, desenhar arquivos é bom, mas não é possível para 'recursos renderizados'.
Eu provavelmente iria com git.
fonte
Um método totalmente lateral é usar o sistema de arquivos AUFS da união, usado pelo Docker para permitir que os usuários criem diffs em nós de sistema de arquivos inteiros e os publiquem. Eles falam sobre isso em seu blog .
Isso não é controle de versão com todas as ferramentas do git, mas permite adicionar e modificar arquivos em uma grande árvore sem limite de tamanho real.
Essa seria uma solução muito robusta apenas para os arquivos de mídia, mas acho que não oferece controle granular, portanto seria melhor para projetos em que a necessidade é semelhante à do Docker.
fonte
O Git poderá lidar com arquivos binários de "várias centenas de megabytes a um gigabyte". É muito rápido
fonte
A pesquisa no Digital Asset Management parece ser chamada de "DAM" - é um segmento destinado a desenvolvedores de jogos, estúdios, cientistas que possuem arquivos grandes. Existem alguns produtos comerciais e, possivelmente, a GUI será fácil, já que o segmento é voltado para artistas e não-engenheiros. Eu estou olhando para resourcespace.org agora porque é de código aberto e parece simples e flexível.
fonte