¿Tiene sentido utilizar el control de código fuente para administrar archivos gráficos (p. ej.PSD y archivos AI)

StackOverflow https://stackoverflow.com/questions/19835233

Pregunta

Por supuesto, las herramientas de control de origen como Git (Mercurial, SVN, etc.) pueden hacer un gran trabajo en la gestión del código fuente.Pero me pregunto, ¿estas herramientas proporcionan al desarrollador alguna ventaja cuando se usan para almacenar copias de archivos como Photoshop PSDS y Illustrator AI Archivos?¿Tiene sentido utilizar estas herramientas con este tipo de archivos?¿Estaría almacenando menos en el repositorio que la suma de los tamaños de archivo de todos estos archivos?Aunque el formato de archivo de estos archivos es solo legible a la máquina, esperaría que para tales aplicaciones, especialmente cuando se trata de gráficos de vector en lugar de ráster, una pequeña parte de estos archivos cambiaría, y gran parte del resto seguiría siendo el mismo .

Gracias por tu conocimiento.

¿Fue útil?

Solución 2

Aunque este es un tema muy obstinado, diría que no, al menos para GIT.

  • Git no fue creado como una solución de almacenamiento.
  • No hay forma de fusionar archivos de imagen.
  • Por lo tanto, las ramas no tienen sentido: si la única forma de fusionar estas ramas es elegir qué versión es correcta, es mejor reemplazar el archivo de inmediato.
  • Las herramientas GIT GUI son inferiores a la consola y no son simples. ¿Quieres enseñarle a tu equipo de arte cuál es la diferencia entre Commit y Push?
  • Cuando revisas el repositorio de git, revisa el toda la historia de todos los archivos, a partir de la confirmación inicial. Si trabaja en archivos binarios el tiempo suficiente, el tamaño se volverá enorme.
  • Muchos sitios de alojamiento de GIT, como GitHub, tienen límites en los tamaños de archivos individuales.

Creo que estás mucho mejor con Dropbox.

Otros consejos

Git en sí puede administrar cualquier tipo de datos, siempre que no sean demasiado grandes o numerosos.
Ver "Git con archivos grandes"(" grande "como en tamaño o número).

La diferencia de las imágenes/gráficos no es una característica compatible con Git de forma nativa, pero un servicio de alojamiento de repo Git puede extender su GUI web para ofrecer dicho soporte.

Github acaba de anunciar (junio de 2014) "Visualización y diferencia de EPSD", que extiende su" visualización de imágenes y difusión"(Noviembre de 2011)

Cualquier activo de PSD en sus repositorios será tratado al igual que las imágenes, lo que significa que puede verlos en línea y usar nuestros tres modos de vista de imagen para ver lo que ha cambiado en una confirmación.

Actualizar Mach 2022: esto es ya no es compatible.
Ver "Trabajar con archivos sin código"Para los archivos para los que se admite DIFF.

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

Los que responden "no" tienen muy buenas razones, pero no es imposible.

Estoy usando con éxito GitHub para administrar Un proyecto de código abierto que consiste en cientos de archivos de ilustradores y PDF (y también algún código y texto, pero ese es un pequeño problema en comparación). El repositorio sale a unos 8GB. La razón por la que estoy haciendo algo tan loco es porque los archivos de ilustrador son el núcleo del producto, no solo las obras de arte decorativas para acompañarlo, son los fuente del proyecto, y porque quería asegurarme de que permaneciera de código abierto.

Ha habido algunos puntos de conflicto y cosas a tener en cuenta. Yo sugeriría:

  • No intentes esto a menos que estés bastante familiarizado con Git. Resolver conflictos y problemas de ramificación puede ser realmente espinoso, y es posible que tenga que hacer algunas cosas bastante arcanas para mantener feliz el repositorio. Nadie espera que sepas todos los rincones de Git (no estoy seguro de que una persona sana pueda), pero sé lo suficiente como para que puedas buscar en Google el resto.

  • Asegúrese de que se sienta cómodo usando GIT en la línea de comando. Las herramientas GUI pueden protegerlo de la complejidad, pero también le impiden comprender completamente lo que está sucediendo debajo de las portadas. Una vez que tenga ese entendimiento, puede usar una GUI para el 95% del tiempo.

  • Evite la ramificación si es posible. Los archivos binarios no fusionan la forma en que el código lo hace, por lo que reunir ramas puede ser desordenada y laboriosa.

  • Aprenda sobre características específicas de GIT que pueden ayudarlo a administrar el tamaño y la complejidad del repositorio: decisiones parciales, etiquetas, git gc, etc

  • Tómese el tiempo para planificar con anticipación. Puede ser que se beneficie al separar el proyecto en dos o más reposos GIT, o de combinarlo con otro servicio.

  • Si está utilizando un servicio de alojamiento, asegúrese de saber qué límites imponen al repositorio. Por ejemplo, GitHub se quejará de archivos de más de 100 MB. Aquí están sus pautas recomendadas para binarios.

No, no recomendaría usar git, svn, etc.para seguimiento de versiones.Una sorprendente cantidad de líneas cambiará entre versiones apenas modificadas de archivos de Adobe; compruébelo usted mismo haciendo una comparación de diferencias.Esto es especialmente cierto cuando opciones como la compresión de archivos nativos están activadas en Illustrator.

Al utilizar juiciosamente capas, enlaces y guardar versiones importantes de los archivos, tendrá un uso del almacenamiento mucho más eficiente que el que SVN podría brindarle para los archivos nativos de Adobe.

La única excepción que se me ocurre es para archivos basados ​​en XML, como los SVG de vector puro.

Si solo necesita una gestión de versión simple con una interfaz de usuario simple, la subversión funciona bastante bien para administrar estos archivos. Tiene un buen soporte de GUI (por ejemplo, SmartSVN o TortoisesVN) con integración de shell. También es mucho más fácil consultar selectivamente solo los archivos que necesita.

Para todos ustedes señalando que el tamaño de los archivos es un gran problema, Git-lfs viene para resolver ese problema.

Es fácil de instalar y usar, y plataformas populares como Github, Gitlab o Bitbucket Apoyarlo sin ningún problema.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top