Actualmente estoy empezando a usar git para mi sistema de control de versiones, sin embargo, realizo un poco de desarrollo de web/juegos que, por supuesto, requiere que se almacenen imágenes (datos binarios). Entonces, si mi comprensión es correcta si comprometo una imagen y ésta cambia 100 veces, si obtengo una copia nueva de ese repos, básicamente estaría revisando las 100 revisiones de ese archivo binario.Git y datos binarios
¿No es esto un problema con los repositorios de gran tamaño en los que las imágenes cambian con regularidad, pero la búsqueda inicial del repositorio no sería demasiado grande? ¿Alguien ha tenido algún problema con esto en el mundo real? He visto algunas alternativas, por ejemplo, el uso de submódulos y el mantenimiento de imágenes en un repositorio separado, pero esto solo mantiene la base de código más pequeña, el repositorio de imágenes aún sería enorme. Básicamente, me pregunto si hay una buena solución para esto.
Esta es una limitación de diseño de git. Fue escrito para hacer una cosa bien: administrar el árbol fuente de Linux, que es prácticamente todo en texto sin formato. Git se trata de diffs y fusiones, cosas que realmente no se aplican a las imágenes.Si sus archivos multimedia son realmente grandes o se editan con frecuencia, es mejor que utilice un mecanismo diferente para almacenar el historial de esos archivos, y si realmente no está colaborando en el código o creando muchas ramas, entonces puede ser mejor. no usar git en absoluto. – user57368
git manejará los archivos binarios, y el sistema que usa para * almacenar * deltas se basa en contenido binario (las diferencias de texto que ve en los parches se calculan sobre la marcha, no en una representación de lo que está almacenado). Una vez dicho esto, xdelta para imágenes comprimidas no es probable que reduzca mucho el requisito de espacio. Puede guardar todas sus imágenes como XPM o BMP: p – araqnid