Migrar desde Visual SourceSafe con historial completo y files compartidos

Actualmente estamos utilizando SourceSafe en el trabajo y realmente me gustaría alejarme de él. Mi jefe está de acuerdo con eso por principio, siempre que podamos llevar toda nuestra historia con nosotros. Mi primer enfoque fue mirar SVN y las forms de migrar allí. Pero descubrí que SVN no admite files compartidos.

A: ¿Hay un buen RCS que admita files compartidos?

O tengo que encontrar una manera de convencer a mi jefe para que deje de lado esa característica en particular. Obviamente, habrá soluciones para la mayoría de los sistemas, pero eso ya sería una venta mucho más difícil para mí.

B: ¿Cómo puedo migrar el historial completo de la versión en el nuevo RCS?

Obviamente automatizado y algo que se ejecuta en Windows. También me gustaría aprender sobre las advertencias y los problemas asociados con las herramientas de migration individuales.

Gracias.


  1. Idealmente, me gustaría ir a ver a mi jefe y decir: "Mira, esta herramienta puede hacerse cargo de todo el historial de versiones con cada detalle y funcionará mucho mejor que VSS" .
  2. En su defecto, debería ser: "Mire que esta herramienta funcionará mucho mejor que VSS. Compartir files funcionará ligeramente diferente pero puede satisfacer todas nuestras necesidades".
  3. De lo contrario, tendré que continuar mi guerra de desgaste contra VSS con armas convencionales …

A. Es posible que desee echar un vistazo a Source Gears Vault . Nunca lo he usado con ira, pero parece ser lo único que tiene una apariencia similar a VSS.

B. Una vez más, Vault es probablemente tu mejor opción. Conversor de VSS para TFS, sin embargo, es probable que la mayoría de sus tags no se migren. En cuanto a otros sistemas de control de versiones, no estoy seguro.

Así que Vault se encontrará con el número 1, mantendrá feliz al jefe. Nunca lo he usado, por lo que podría no ser muy bueno, pero se lo denomina VSS sin corrupción. Creo que ofrecen una versión de testing para que la descargue y juegue. Sin embargo, es un producto comercial, por lo que si tiene un requisito para una herramienta gratuita (como en la cerveza), puede que esto no funcione para usted.

Si quieres hacer un esfuerzo adicional, y hacer el número 2, entonces estás viendo SVN, TFS, git o Mercurial. Todos estos son muy diferentes de VSS y todos ellos tienen sus pequeñas peculiaridades.

La migration a cualquier otro sistema de control de versiones de VSS va a ser doloroso. No hay nada por ahí, aparte de quizás Vault, que reproduce completamente la forma en que VSS se comporta.

Otro afiche sugirió ir a TFS. Acabo de migrar unos 100 repositorys de VSS a TFS y, en mi opinión, es un producto mucho mejor. Habiendo dicho eso, habrá mucho aprendizaje y planificación involucrados.

VSS usa muchas convenciones que no están disponibles en otros sistemas, por lo que debe dar un paso atrás y observar por qué hace las cosas y no cómo. Una vez que haya descubierto por qué utiliza funciones como compartir y fijar, puede planificar cómo usará las funciones de cualquier sistema de control de versiones que elija para replace a VSS, para get los mismos resultados.

Si, como yo, trabajas para una empresa donde la mayoría de los desarrolladores solo han utilizado VSS para el control de código fuente, entonces también debes tener en count que requerirán algún tipo de capacitación. Descubrí que VSS envenena la mente, y nuestros desarrolladores y gerentes de configuration han tenido dificultades reales para familiarizarse con el código de bifurcación y fusión.

En cuanto a la historia, a pesar de que su nueva herramienta de elección puede migrar el historial completo. Aún debe tener en count que las acciones, los marcadores o las tags probablemente no estarán disponibles para usted después de la migration. En varias ocasiones, decidimos que la mejor opción era "get" una versión válida conocida del código y migrar eso. En esos casos, los repositorys de VSS se hicieron de solo lectura para que el historial aún estuviera disponible si fuera necesario.

Todo lo anterior se basa en mis propias experiencias de migration de VSS a TFS, pero sospecho que se aplica a cualquiera de los otros sistemas de control de versiones con los que se encontrará. Cualquiera sea la herramienta que decida usar, ¡buena suerte!

Puedo recomendar la migration de un repository de VSS a Team Foundation Server (TFS), es un process sencillo y sin complicaciones utilizando la herramienta VSSConverter.exe incluida con TFS. También se mueve a través de su historial de VSS.

Puede soltar files compartidos y usar ramificaciones , que es mucho más útil y poderoso.