Pergunta

Obviamente, ferramentas de controle de origem como Git, (Mercurial, SVN, etc ...) podem fazer um ótimo trabalho no gerenciamento do código -fonte. Mas eu me pergunto, essas ferramentas fornecem ao desenvolvedor alguma vantagem quando usadas para armazenar cópias de arquivos como Photoshop PSDs e Arquivos AI Illustrator? Faz sentido usar essas ferramentas com esse tipo de arquivo? Eu estaria armazenando menos no repositório do que a soma dos tamanhos de arquivo de todos esses arquivos? Embora o formato de arquivo desses arquivos seja apenas legível pela máquina, eu esperaria que isso seja para tais aplicativos, especialmente ao lidar com o vetor em vez de gráficos raster, uma pequena parte desses arquivos mudaria, e grande parte do resto permaneceria a mesma .

Obrigado por sua visão.

Foi útil?

Solução 2

Embora essa seja uma questão muito opinativa, eu diria que não - pelo menos para o Git.

  • O GIT não foi criado como uma solução de armazenamento.
  • Não há como mesclar arquivos de imagem.
  • Portanto, as filiais não fazem sentido - se a única maneira de mesclar essas ramificações é escolher qual versão está correta, você é melhor substituir o arquivo imediatamente.
  • As ferramentas Git GUI são inferiores ao console e não são simples. Deseja ensinar sua equipe de arte qual é a diferença entre comprometer e push?
  • Ao fazer o checkout git repo, você faz o checkout do História inteira de todos os arquivos, começando a partir da confirmação inicial. Se você trabalha em arquivos binários por tempo suficiente, o tamanho ficará enorme.
  • Muitos sites de hospedagem Git, como o GitHub, têm limites para tamanhos de arquivo individuais.

Eu acho que você está muito melhor com o Dropbox.

Outras dicas

O próprio Git pode gerenciar qualquer tipo de dados, desde que não sejam muito grandes ou numerosos.
Ver "git com arquivos grandes"(" grande "como em tamanho ou número).

O Diff'ing Pictures/Graphics não é um recurso suportado pelo Git nativamente, mas um serviço de hospedagem de repositório Git pode estender sua GUI da Web para oferecer esse suporte.

Github acabou de anunciar (junho de 2014) "Visualização e diferença de EPSD", que estende o seu" Visualização e difusão de imagem"(Nov. 2011)

Quaisquer ativos do PSD em seus repositórios serão tratados como imagens, o que significa que você pode visualizá -las embutidas e usar nossos modos de exibição de três imagens para ver o que mudou em uma confirmação.

Atualizar mach 2022: isso é Não mais suportado.
Ver "Trabalhando com arquivos não-código"Para os arquivos para os quais o DIFF é suportado.

https://cloud.githubusercontent.com/assets/2546/3165594/55f2798a-eb56-11e3-92e7-b79ad791a697.gif

Aqueles que respondem "não" têm boas razões, mas não é impossível.

Estou usando com sucesso o github para gerenciar um projeto de código aberto consistindo de centenas de arquivos e PDFs ilustradores (e também algum código e texto, mas esse é um pequeno pontapé em comparação). O repositório sai por cerca de 8 GB. A razão pela qual estou fazendo algo tão insano é porque os arquivos do ilustrador são o núcleo do produto, não apenas obras de arte decorativas para acompanhá -lo - eles são os fonte do projeto - e porque eu queria ter certeza de que permaneceria em código aberto.

Houve alguns pontos de discórdia e coisas a serem conscientes. Eu sugeriria:

  • Não tente isso, a menos que você esteja bem familiarizado com o Git. Resolver conflitos e problemas de ramificação podem ficar realmente espinhosos, e você pode ter que fazer algumas coisas bem misteriosas para manter o repositório feliz. Ninguém espera que você conheça todos os cantos do Git (não tenho certeza de que uma pessoa sã possa), mas saiba o suficiente para que você possa pesquisar no Google o resto.

  • Certifique -se de estar confortável usando o Git na linha de comando. As ferramentas da GUI podem proteger você da complexidade, mas também impedem que você entenda completamente o que está acontecendo sob as cobertas. Depois de ter esse entendimento, você é livre para usar uma GUI por 95% das vezes.

  • Evite ramificar, se possível. Os arquivos binários não se fundem da maneira que o código faz, portanto, reunir ramos pode ficar confuso e trabalhoso.

  • Aprenda sobre recursos específicos do Git que podem ajudá -lo a gerenciar o tamanho e a complexidade do repo: exames parciais, tags, git gc, etc.

  • Reserve um tempo para planejar com antecedência. Pode ser que você se beneficie de separar o projeto em dois ou mais repositórios Git ou de combiná -lo com outro serviço.

  • Se você estiver usando um serviço de hospedagem, certifique -se de saber quais limites eles impõem ao repositório. Por exemplo, o Github reclamará sobre arquivos acima de 100 MB. Aqui estão suas diretrizes recomendadas para binários.

Não, eu não recomendaria o uso do Git, SVN, etc. para rastreamento de versão. Uma quantidade surpreendente de linhas mudará entre versões quase alteradas dos arquivos Adobe - veja por si mesmo fazendo uma comparação diferente. Isso é especialmente verdadeiro quando opções como a compactação de arquivos nativas são ativadas no ilustrador.

Ao usar criteriosamente camadas, links e salvar versões marcantes de arquivos, você terá um uso muito mais eficiente do armazenamento do que os SVNs jamais poderiam fornecer a você para arquivos adobe nativos.

A única exceção que consigo pensar é para arquivos baseados em XML, como SVGs de vetor puro.

Se você precisar apenas de gerenciamento de versão simples com uma interface do usuário simples, a subversão funciona muito bem para gerenciar esses arquivos. Possui um bom suporte da GUI (por exemplo, SmartSvn ou TortoisesVN) com integração de conchas. Também é muito mais fácil verificar seletivamente apenas os arquivos necessários.

Para todos vocês apontando que o tamanho dos arquivos é um grande problema, Git-lfs vem para resolver esse problema.

É fácil de instalar e usar, e plataformas populares como Github, Gitlab ou Bitbucket Apoie -o sem nenhum problema.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top