¿Es un repository de GIT con decenas o cientos de miles de compromisos demasiado grandes?

Me han encargado la migration de todo nuestro repository de PVCS a git, incluido todo el historial. La única forma en que se me ocurrió hacer esto es ejecutar un command PVCS VLOG para extraer el historial de revisiones (para todos los files) en un file y luego analizar ese file (usando un progtwig C #) para get la list de revisiones. para cada file. Luego revisión por revisión I GET la revisión dada del file de PVCS, AGREGUE el file a GIT y haga un COMPROMISO. Entonces, para cada uno de los ~ 14,000 files tendré un compromiso para cada revisión del file (y cada file podría tener de 1 a 100 + revisiones). ¿Estoy loco pensando que esto funcionará? ¿Habrá demasiados commits haciendo que el repository sea demasiado grande y difícil de manejar?

¡Gracias por cualquier ayuda en esto!

Descargo de responsabilidad: No estoy familiarizado con PVCS en particular.

Sin embargo, he tratado un problema similar al convertir CVS a Git. Hay un command gvi cvsimport, que agrupa los commits de files en function del time, el committer y el post. Si hay herramientas que pueden convertir PVCS a CVS o svn (también hay una import de svn para Git), simplemente conviértalo en dos pasos.

De lo contrario, sugeriría modificar su progtwig de la siguiente manera:

  • Ordenar todas las confirmaciones (entre files) por date
  • Para cada compromiso
    • Si committer, date o message es diferente de commit anterior, entonces commit
    • Obtener contenido de file de la confirmación actual

Obviamente, las dates no deberían coincidir exactamente. Haga una determinación con respecto a lo que se considera el mismo compromiso. Además, es posible que desee permitir que los posts de confirmación similares se consideren la misma confirmación si, por ejemplo, tienen el mismo número de seguimiento de errores.

Considere usar git fast-import que elude el índice para un time de procesamiento mucho más rápido.