Pregunta

¿Hay alguna forma de migrar SourceSafe con HISTORY a un SVN?

Idealmente me gustaría usar VisualSVN Server, pero realmente no quiero perder mi historial de SourceSafe. Si tengo que hacerlo, lo haré.

¿Fue útil?

Solución

Hace mucho tiempo (parece) intenté migrar un DB de SourceSafe a subversion usando vss2svn , pero finalmente se rindió. Hubo varios problemas, IIRC:

  • debe asegurarse de que la base de datos SS sea coherente (por ejemplo, Analizar no encuentra ningún problema o puede solucionarlo).
  • tardó mucho tiempo en migrar la base de datos, porque era bastante grande.
  • finalmente la migración falló debido a algunos problemas con las fechas de análisis. No pude encontrar la razón del problema, pero supongo que se debió al hecho de que usamos el formato de fecha DD.MM.YYY en lugar del formato de fecha de EE. UU.

Así que finalmente decidimos mantener intacta la base de datos de SourceSafe (solo lectura) y simplemente migrar la versión actual a subversion. Hasta ahora, hubo muy pocas ocasiones en las que tuvimos que volver a SourceSafe para verificar algo.

Espero que esto ayude.

Por cierto: no importa si usa VisualSVN Server o Subversion directamente (svnserver). El formato del repositorio es el mismo en ambos casos.

Otros consejos

Pruebe el vss2svn script.

O el vss2svn proyecto.

Convertí con éxito nuestra desagradable base de datos VSS, incluido el historial. Escribo sobre la experiencia < strong> aquí. El punto culminante de la conversión es:

" Todas las herramientas de conversión también requieren que la base de datos VSS de origen esté limpia de corrupción antes de la conversión. Esto resultó ser mucho más difícil y lento de lo que piensas. La ejecución de la herramienta VSS Analyze en una copia de la base de datos mostró cientos de corrupciones y no se ejecutaría hasta su finalización sin una pantalla azul en la computadora en la que se estaba ejecutando.

Para evitar esto, redujimos la base de datos de copias eliminando los directorios que no queríamos convertir. Lamentablemente, VSS informará de cada corrupción durante el proceso de eliminación, lo que provocará cientos de cuadros de mensajes en los que el usuario debe hacer clic sin pensar para que el proceso continúe.

Una vez alcanzado ese punto, utilizamos la herramienta VSS2SVN para crear archivos de volcado que se importaron a Subversion. "

Utilizamos Polarion SVN Importer para migrar VSS a SVN con historial completo .

Sí, use el proyecto VSS2SVN en Codeplex . Lo actualicé para que mantenga las propiedades de historial, comentarios, autor y fecha al migrar a SVN. Tarda un poco más, pero no creo que eso importe, ya que no es algo que haces todos los días.

También tiene una opción para actualizar el repositorio con archivos de VSS después de una fecha determinada, para que pueda actualizar un volcado inicial más adelante.

En mi compañía, intenté migrar repetidamente un (gran) repositorio SourceSafe a Subversion con vss2svn. Incluso causé una pequeña contribución con respecto al soporte de la página de códigos (teníamos nombres de archivo en griego). Si no recuerdo mal (esto sucedió la primavera pasada; es decir, de 2009), nuestro principal problema (el que nos hizo finalmente descartar la migración) fue que los archivos eliminados permanentemente que estaban entrecruzados / movidos entre partes deseadas y no deseadas del repositorio estaban bloqueándose la migración.

Mi sugerencia: si no puede hacerlo en un repositorio completamente analizado , no pierda más tiempo. Simplemente dibuje una línea y comience con un nuevo repositorio de subversión.

Nota: la eliminación permanente de un archivo en SourceSafe hace que el archivo sea totalmente irrecuperable, lo cual es algo totalmente incompatible con los sistemas de control de fuente de tipo CVS / SVN (y, supongo, también otros sistemas de control de fuente).

Mi empresa ha desarrollado una herramienta de migración de Source Safe a Subversion: http://www.abstrakti.com/Products/Krepost

Esta herramienta se desarrolló después de tener problemas con cualquier otra herramienta, cuando tuvimos que migrar el repositorio de un cliente. Además, esta es la única herramienta que puede importar etiquetas de SourceSafe en SVN. Además, es capaz de lidiar con la mayoría de las corrupciones del repositorio de SourceSafe y ofrece una migración sin problemas a los usuarios que no desean pasar unos días depurando el código C #.

Avísame si tienes algún problema, estaré encantado de ayudarte.

Eric.

Logré migrar con éxito los diversos repositorios seguros de origen a SVN usando el script vss2svn . Mis sugerencias son, hacerlo en pequeños fragmentos: tuvimos muchos proyectos pequeños y un par de proyectos secundarios medianos, que lograron trasladarse con éxito a SVN.

Tuve un par de problemas:

  • Los archivos grandes no se pudieron escribir en el formato de archivo de volcado SVN, envié un parche para que funcione, creo que alguien lo escribió un poco más sofisticado después de que terminé.
  • La estructura del directorio raíz no se copió correctamente. El repositorio VSS se organizó como $ / client / project. El repositorio svn terminó siendo organizado como svn: // server / randomdirectory / anotherrandomdirectory / client / project. Así que arreglé esto editando el archivo de volcado antes de importarlo (creo que fue encontrar replace '' / randomdirectory 'con' '.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top