2009-06-07 7 views

Respuesta

14

Si bien no he hecho esa conversión en particular, he pasado de VSS a SVN usando (IIRC) this script. Es probable que desee buscar en sastrería y hacer una búsqueda de vss2hg. También tenga en cuenta que puede tener sentido pasar por un paso intermedio como vss2svn + svn2hg o similar.

Sin embargo, el consejo principal que daría es: escriba la conversión para que pueda volver a ejecutarla fácilmente. Esto le permitirá ejecutar conversiones nocturnas de VSS a Hg y asegurarse de que todo se esté convirtiendo correctamente antes de apretar el gatillo.

5

El wiki de Mercurial tiene esta página, que podría ser de su interés: https://www.mercurial-scm.org/wiki/SourceSafeConversion. Nunca utilicé Visual Source Safe, así que no tengo ninguna experiencia personal con él.

También encontré un mail from Patrick Mézard sobre el tema, pero desafortunadamente él escribe que un convertidor VSS será difícil. También habla acerca de la conversión a Subversion primero, y luego de Subversion a Mercurial. Supongo que eso significa que hay conversiones VSS -> SVN por ahí. Usted puede probablemente google eso usted mismo.

6

Utilicé el script vss2hg.pl desde here. Es un script Perl, por lo que primero debe instalar ActivePerl.

Funcionó muy bien, pero me encontré con un problema con las fechas. Resulta que la secuencia de comandos admite tres tipos de formatos de fecha. Por defecto, está configurado en el formato de fecha del Reino Unido (en la línea 547). Los otros dos formatos de fecha están comentados en el código. Después de habilitar el formato de fecha de los EE. UU., La secuencia de comandos convirtió mi base de datos de SourceSafe sin problemas.

+2

Hice algunas correcciones al script. Puede descargarlo [aquí] (http://edmundv.home.xs4all.nl/sw/vss2hg.pl). – Edmund

+0

Parece que la mayoría de los enlaces publicados a vss2hg.pl están rotos. ¿Puede proporcionar correcciones o redirecciones según corresponda? Después de algunas pruebas y errores, descubrí que una versión anterior del script (vinculada a http://mercurial.selenic.com/wiki/SourceSafeConversion) está disponible en http://mercurial.selenic.com/wiki/SourceSafeConversion? action = AttachFile & do = view & target = vss2hg.pl y una versión más reciente está disponible (pero no publicada en ningún lugar excepto en los resultados de búsqueda de Google) de http://edmundv.home.xs4all.nl/sw/vss2hg.pl – BlueMonkMN

13

Soy el autor del script vss2hg.pl y lo he usado para mover muchos proyectos de VSS a Mercurial. Tiene uno o dos errores menores donde algunos comentarios no se convierten por completo, pero no he visto ningún otro problema. Convierte el historial completo y funciona en torno a un problema con VSS donde el reloj de PC de un usuario puede afectar el orden en el que parece que se realizan los cambios.

Una versión de la secuencia de comandos está disponible here.

+0

el sitio web ya no está disponible parece que – lstanczyk

+0

Utilice la versión vinculada desde @Edmund a continuación; lo está manteniendo ahora ya que hemos dejado el hábito de VSS. – trojanfoe

0

Solo traté de usar vss2hg y me encontré con el problema de que solo arrancaba y convertía 1 usuario. Esto significa que todos mis conjuntos de cambios, etc. no serán precisos, ya que no podré ver quién los hizo. ¿Esto es porque no configuré previamente todos los usuarios necesarios en hg?

+3

Es posible que tenga mejor suerte al hacer esta pregunta. –

3

He hecho una conversión de SourceSafe a Mercurial para un cliente. Primero convertí la base de datos de SourceSafe a un repositorio de Subversion y luego de Subversion a Mercurial usando la extensión hg convert. Vea my blog post para más detalles.