2012-06-16 8 views
8

Me preguntaba qué pensaban todos sobre la mejor herramienta de control de versiones 'git like' que se puede usar para muchos archivos pequeños (1 - 30 kb). Todo lo que realmente quiero hacer es eliminar, cambiar, cambiar el nombre pero no cambiar el contenido.Herramienta de versionado tipo best git para muchos archivos pequeños

Mi situación es de aproximadamente 200,000 archivos de 1 a 30 kilobytes.

Algunas búsquedas me llevaron a git-annex. ¿Hará eso lo que necesito?

+16

¿Por qué no se git? – kjp

+2

git fue creado para administrar el código fuente. esos archivos son pequeños también ... –

+0

git realiza un seguimiento de las eliminaciones, movimientos y renombrados. Con git log puede '--follow' archivos individuales – peshkira

Respuesta

1

git-annex es el único en el que sé, basado en git. Esta herramienta es compatible con lo que está buscando y más. por ejemplo, sincronizar múltiples repositorios anexos de una sola vez. Usted tiene el soporte completo del comando git y todos los nuevos comandos del anexo. Para aclarar, cambie el nombre, elimine, mueva a git. Anexo usa enlaces simbólicos para rastrear tu contenido.

Utilizo la herramienta para rastrear y actualizar los archivos de mi página de inicio. Rsync no puede manejar el cambio de nombre. Esa fue la razón por la que uso esta herramienta, y porque sé muy bien.

+1

Git-annex no proporciona muchas (si las hay) ventaja sobre git en este contexto (muchos archivos pequeños, vea mi comentario en la otra respuesta). En cambio, incluso está renunciando a la característica central de git: control de versiones. –

1

Para reiterar un comentario, ¿por qué no simplemente git sí mismo? La herramienta fue diseñada para funcionar bien en muchos contextos diferentes.

Aunque, por lo que vale la pena, el seguimiento de los cambios de nombre reales no es tan fácil en git. Las herramientas están ahí, pero no hay una manera fácil de acceder a ellas. Ver Find git commits that "rewrite" files.

Otra idea: encuentre una herramienta simple que reúna todos los nombres de archivo en un archivo de texto y simplemente use git para rastrear eso. Nuevamente, podría manejar el cambio de nombre tan bien, sin embargo.

+0

Git no funciona muy bien en una situación en la que tiene archivos grandes o muchos archivos pequeños (@see http://stackoverflow.com/questions/984707/what-are-the-git-limits/984973#984973) –

+1

Es cierto, pero git-annex no resuelve este problema en particular. Dado que cada archivo manejado por git-annex está incluido en el repositorio git subyacente y, por lo tanto, el número de archivos en ambas soluciones es idéntico. –

Cuestiones relacionadas