subversion migrar svn version-control visual-sourcesafe visualsvn visualsvn-server

subversion - ¿Hay alguna manera de migrar SourceSafe con HISTORY a SVN?



migrar de subversion a git (8)

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

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

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

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



Convertí con éxito nuestra desagradable base de datos VSS, incluida la historia. Blogo sobre la experiencia aquí. El resaltado de conversión es:

"Todas las herramientas de conversión también requieren que la base de datos VSS de origen esté libre de daños antes de la conversión. Esto resultó ser mucho más difícil y lento de lo que podría pensar. 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 proyección azul de la computadora en la que se estaba ejecutando.

Para evitar esto, redujimos la base de datos de copia al eliminar los directorios que no queríamos convertir. Lamentablemente, VSS informará cada una de las corrupciones durante el proceso de eliminación, lo que generará cientos de cuadros de mensaje en los que el usuario deberá hacer clic sin pensar para que el proceso continúe.

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


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

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

Nota: Eliminar permanentemente un archivo en SourceSafe hace que el archivo sea totalmente irrecuperable, lo que es completamente incompatible con los sistemas de control de fuente de tipo CVS / SVN (y, supongo, también con otros sistemas de control de fuente).


Mi empresa ha desarrollado una herramienta de migración de Source Safe to 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 indolora a los usuarios que no desean pasar unos días depurando el código C #.

Avíseme si tiene algún problema, con gusto lo ayudaré.

Eric.


Hace mucho tiempo (parece) intenté migrar un DB de SourceSafe a subversión usando vss2svn , pero finalmente me di por vencido. Hubo varios problemas, IIRC:

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

Finalmente, decidimos mantener intacta la base de datos de SourceSafe (solo lectura) y simplemente migrar la versión actual a subversión. 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.



Logré migrar con éxito los varios repositorios de fuente segura en SVN usando el script vss2svn . Mis sugerencias son: hazlo en pequeños fragmentos: tuvimos muchos pequeños proyectos y un par de proyectos medianos, todos los cuales lograron trasladarse con éxito a SVN.

Tuve un par de problemas:

  • Los archivos grandes no se escribieron 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 de 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 reemplazar "/ randomdirectory ''con'' ''.