¿Cuál es la mejor manera de mover un repositorio de Visual SourceSafe a Mercurial (estoy interesado en conservar todo el historial)?Pasar de Visual Sourceafe a Mercurial
Respuesta
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.
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.
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.
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.
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?
Es posible que tenga mejor suerte al hacer esta pregunta. –
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.
- 1. ¿Cómo usar Mercurial de Visual Studio 2010?
- 2. .hgignore Mercurial para proyectos Studio 2010 Visual
- 3. Problema de flujo de trabajo Mercurial a Mercurial a Subversion
- 4. ¿Integración Mercurial en Visual Studio 2005?
- 5. ¿Cómo pasar a compilaciones automatizadas con Visual Studio?
- 6. ¿Qué archivos/carpetas en una solución C# de Visual Studio 2010 deben ir a Mercurial DVCS?
- 7. Mercurial .hgignore para proyectos de Visual Studio 2012
- 8. Introducción a Mercurial
- 9. Convertir cvs a mercurial
- 10. Convirtiendo de Mercurial a Subversion
- 11. Mercurial .hgignore para proyectos de Visual Studio 2008
- 12. cómo pasar de AnkhSVN plugin para VisualHG en Visual Studio 2010
- 13. ¿Se puede integrar Mercurial en Visual Studio 2008?
- 14. Mercurial clone from a branch
- 15. cómo pasar de C# a python?
- 16. ¿Parches de contribución de Mercurial a Git?
- 17. Código de mudanza de mercurial a TFS
- 18. Agregando un subrepositorio de Git a Mercurial
- 19. Migración de Mercurial a la subversión
- 20. Migrar de ClearCase a SVN/Mercurial
- 21. Pasar a Mono: alternativas de Entity Framework
- 22. Pasar argumentos al depurador XSLT de Visual Studio
- 23. Mercurial build on push
- 24. Pasar de Java a Python
- 25. Pasar de VSS a SVN
- 26. Pasar de multiprocesamiento a subprocesamiento
- 27. Pasar de JQuery a RightJS
- 28. Pasar de .NET a Java
- 29. Pasar de C# a php
- 30. Pasar valores a onclick
Hice algunas correcciones al script. Puede descargarlo [aquí] (http://edmundv.home.xs4all.nl/sw/vss2hg.pl). – Edmund
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