Attualmente sto iniziando a utilizzare git per il mio sistema di controllo versione, tuttavia faccio un bel po 'di sviluppo web/di gioco che richiede naturalmente immagini (dati binari) da memorizzare. Quindi, se la mia comprensione è corretta se commetto un'immagine e cambia 100 volte, se prendo una nuova copia di quel repository proverò fondamentalmente tutte le 100 revisioni di quel file binario?Dati git e binari
Non si tratta di un problema con repo di grandi dimensioni in cui le immagini cambiano regolarmente non sarebbe il recupero iniziale del repository diventare piuttosto grande? Qualcuno ha avuto problemi con questo nel mondo reale? Ho visto alcune alternative, ad esempio, usando i sottomoduli e mantenendo le immagini in un repository separato, ma questo mantiene solo il codebase più piccolo, il repository delle immagini sarebbe ancora enorme. Fondamentalmente mi sto chiedendo se c'è una bella soluzione a questo.
Questa è una limitazione di progettazione di git. È stato scritto per fare bene una cosa: gestire l'albero dei sorgenti di Linux, che è praticamente tutto in chiaro. Git è tutto basato su differenze e fusioni, cose che in realtà non si applicano alle immagini.Se i file multimediali sono molto grandi o modificati di frequente, è meglio utilizzare un meccanismo diverso per archiviare la cronologia di tali file e, se non si sta realmente collaborando al codice o si creano molti rami, è possibile che sia meglio spento non usare affatto git. – user57368
git gestirà i file binari e il sistema che usa per * memorizzare * delta si basa sul contenuto binario (le differenze di testo che vedi nelle patch sono calcolate al volo, non una rappresentazione di ciò che è memorizzato). Detto questo, xdelta per le immagini compresse non è in grado di ridurre molto lo spazio richiesto. È possibile salvare tutte le immagini come XPM o BMP: p – araqnid