Git o Subversion para files binarys

Necesitamos almacenar files binarys (principalmente documentos de MS Word, que van desde un par de KB a un par de MB de tamaño) en un repository de control de versiones con más de 100 "proyectos". Actualmente usamos Visual Source Safe pero hay algunos problemas, la database se cuelga a veces y el acceso es lento.

Estamos considerando mudarnos a Git o Subversion y nos preguntamos cuál sería una mejor opción para manejar files binarys.

Subversión, definitivamente. Hoy (2009), TortoiseSVN proporciona navigation integrada Explorer de repositorys de Subversion, y más particularmente admite la diferenciación de documentos de Word arbitrarios (difiere el diff de Word, pero la característica funciona muy bien).

No hay ninguna razón por la cual un TortoiseGit no pueda tener esta misma característica, pero tal cosa no existe en forma estable hoy en día. Afortunadamente, es fácil migrar un repository de Subversion a Git en cualquier momento en el futuro.

Actualización : a partir de 2011, TortoiseGit aparentemente tiene las mismas funciones de gestión de documentos que TortoiseSVN. Sin embargo, Subversion admite documentos de locking de asesoramiento para que otros usuarios reciban una notificación si intentan editar el documento al mismo time que otra persona. A mi leal saber y entender, TortoiseGit no puede admitir esta característica debido a la naturaleza distribuida de Git.

  • Subversion intenta detectar automáticamente los files binarys (ver las preguntas frecuentes de SVN ). Si esto falla, debe designarlos usted mismo (tampoco puede cambiar el método de detección de SVN).

  • Git hace lo mismo y puede especificar qué files tratar automáticamente como binarys al include un file .gitattributes en su repository de origen.

  • Aquí hay una comparación del event handling files binarys de Git y SVN.

  • Esto es lo que otros miembros de Stack Overflow han estado haciendo con Git y files binarys.

¡Espero que esto ayude!

Usamos git para todo. Literalmente. Incluso el uso compartido de files completo de nuestra oficina administrativa se mantiene en git (el sysadmin lo compromete todos los días).

Ese compartir es casi en su totalidad files binarys: documentos de palabras, libros rápidos, etc.

Tenemos una historia 100% precisa de todo. Y con un git gc ocasional, mantiene el tamaño del repository manejable.

Además: git es realmente rápido. Cuando cambiamos de SVN, git era ~ 10x más rápido que la subversion en nuestros patrones de uso (proyectos grandes con más de 20,000 files).

TortoiseGit admite el flujo de trabajo completo de git para que los documentos de Office deleguen diff a la propia Office. También funciona delegando a OpenOffice para formattings de OpenDocument.