O git-annex é apropriado para o meu cenário?

7

Eu tenho um repositório git com códigos-fonte que quero colocar em aberto no github.

No entanto, eu também tenho gigabytes de dados que eu não quero ter no open e no repositório - eles são grandes, eles são proprietários, eles são "sobrecarregados" com direitos autorais e assim por diante. No entanto, eles também são logicamente "parte do mesmo projeto" e eu gostaria de ter algum controle sobre sua história (basicamente, o que o git já faz).

Agora, eu os tenho no diretório "data" no repositório e eu tenho o diretório ignorado e eu resigno em fazer com que eles git.

No entanto, li sobre o git-annex e parece que ele pode fazer o que eu quero. Então, eu tenho duas perguntas.

  • O git anexo é apropriado para mim?
  • Como exatamente devo usar o git annex para meu cenário? Significado - quais comandos devo usar e como?

    Eu tentei ler a documentação oficial, mas ela fala sobre casos de uso que não me interessam. Eu tenho os dados em apenas um computador e não acho que os moverei em breve (é bom ter a possibilidade, mas não é por isso que quero usar o git annex). Além disso, a documentação é muito difícil de ler.

por Karel Bílek 15.11.2012 / 11:29

1 resposta

5

O Git-annex poderia de fato ajudá-lo em grandes blobs binários de dados. No entanto, acho que você deve considerar não colocar isso no mesmo repositório que o do seu código-fonte. Seria necessário baixar muitos dados para clonar seu repositório e será difícil recuperar espaço se esses arquivos grandes forem atualizados em algum momento.

Portanto, sugiro dar uma olhada nos submódulos Git e fazer /data a submódulo para outro repositório contendo principalmente ou apenas dados do Git-anexo.

Acho que essa abordagem ajudará a manter o repositório de código-fonte limpo e rápido, além de fornecer uma maneira de usar o controle de versão até certo ponto nos grandes blobs binários.

edit / update: Eu acho que na verdade não faz muita diferença se você cria um submódulo para isso ou não. No final, é apenas um anexo do Git e os usuários podem baixar os arquivos sob demanda; Não há nada padrão para baixar todos os arquivos no clone.

    
por 21.11.2012 / 10:09

Tags