16

¿Hay alguna herramientas para facilitar la migración de Sourcegear's Vault a Subversion?¿Alguna herramienta para migrar el repositorio de Vault a Subversion?

Realmente preferiría una herramienta o proyecto existente (¡lo compraré!).

Requisitos:

  1. migración de una sola vez
  2. la historia completa con comentarios

Opcional:

  1. Algunos soporte para etiquetas/ramas/etiquetas
  2. Relativamente veloz. Puede tomar horas, pero no días.
  3. costo si disponibles

puntos de bonificación si se puede compartir la experiencia personal relacionada con este proceso.


Una de las razones por las que me gustaría hacer esto es porque tenemos un montón de proyectos repartidos entre Vault y Subversion (por fin estamos lejos de sourcesafe). En algunas situaciones, sería útil poder consolidar los repos de un cliente en particular en SVN.

Además, SVN es mejor compatible con herramientas de terceros. Por ejemplo, Hudson y Redmine.

De nuevo, sin embargo: no estamos abandonando la bóveda por completo.

+0

Algunos me han preguntado por qué salgo de Vault. No se trata de abandonar la bóveda o favorecer a SVN: mi empresa usa ambos. Sería útil en algunas situaciones poder pasar de una a la otra. –

+0

Hmm. Me pregunto si Eric Sink lee Stackoverflow y si quiere hacer alguna representación rápida al implementar esta característica en Vault. –

+0

Dudo que esto sea algo que estaría feliz de tener. –

Respuesta

19

Estamos pensando en migrar de bóveda a git. Escribí el convertidor vault2git que se ocupa de la historia y elimina enlaces de bóveda de los archivos * .sln, * .csproj.

Una vez que tengas git repo, hay git2svn.

Sé que suena como ir ronda, pero podría ser más rápido que escribir vault2svn desde cero.

+3

Aquí está la URL de git2svn: http://github.com/AndreyNikiforov/vault2git No estoy seguro de que sea bueno, pero me molestaba que no se incluyera ningún enlace. –

+2

También estaba teniendo este problema, pero estamos en una versión anterior de Vault (3.1.9). Bifurqué el informe de Andrey y lo modifiqué para que funcione con nuestra versión de Vault. https://github.com/jocull/vault2git - Debería haber una rama llamada vault_api_3.1.9 – jocull

+0

@Andrey Quiero darte una bebida para agradecerte, pero no puedo encontrar tu información de contacto. Vault2Git representa tal contribución; ¡gracias! : o) – iokevins

2

Nunca he encontrado una manera fácil de convertir de Vault a svn. Básicamente, tomamos nuestras últimas ramas y troncales y comenzamos nuevas en svn. Honestamente, devolví dos o tres etiquetas solo porque sí. Mantuve guardado DB durante seis meses y nunca tuvimos que volver a buscar datos. Así que supongo que desea llevar adelante su historial para un enlace de seguimiento de errores; al mismo tiempo transferimos nuestra excelente lista de fallas a un nuevo rastreador, por lo que definitivamente hizo las cosas más convenientes. Si nos quedamos con el mismo rastreador de errores, creo que podríamos comenzar una nueva instancia para el nuevo repositorio. ¡Buena suerte!

Brett

8

Si desea historial versión completa, es posible que desee simplemente escribir un script que comprueba hacia fuera cada versión de la bóveda y los controles en los comentarios a la subversión.

https://www.mercurial-scm.org/wiki/GenericConversion es un buen ejemplo

Sobre la base de la documentación que vi en el sitio web de la cámara acorazada, mira en el getVersion línea de comandos.

Use su lenguaje de programación preferido ... implementar el siguiente proceso:

  1. extraer una versión de la bóveda.
  2. Obtiene los comentarios de confirmación para el conjunto de cambios.
  3. añadir/quitar los archivos en el repositorio SVN
  4. Confirmar archivos utilizando el commit comentarios
  5. Volver al paso uno con la próxima versión
+0

Esto es lo que habíamos empezado a hacer, pero pensé que podría pedirle ASÍ para ver si algo ya existe. ¡Gracias por el enlace, sin embargo! –

+0

¿Algún consejo sobre cómo implementar el lado de Vault de eso? –

+0

No tengo bóveda, así que no puedo darle los comandos exactos, pero GETVERSION e HISTORY son comandos que deben investigarse. – Joshua

0

gratuito. Los costos de la licencia de usuario de la bóveda se han triplicado desde que fuimos a ella.

+0

No sé cómo su respuesta es relevante, pero es verdad. Esta es una de las principales razones por las que me estoy moviendo a SVN (además de la disponibilidad de mac client) – schmoopy

0

Estamos considerando migrar también. Una razón es el costo, pero otra razón es que Vault no utiliza xml válido (o ninguno) para sus comentarios de compromiso, por lo que los caracteres especiales fallan nuestro sistema de compilación CCNet automatizado (por ejemplo, un carácter de viñeta es uno de ellos y específicamente nos causa un problema) . Una forma de evitarlo ha sido: A) pedirles a nuestros desarrolladores que no usen estos caracteres especiales "inválidos" (caracteres fuera del rango de ASCII 32 - 126) y B) para entrar y volver a confirmar el código manualmente con un "válido" comentario. Esto puede no parecer un gran problema, pero no permite que estos caracteres impidan copiar/pegar fácilmente errores y otros comentarios en el comentario de confirmación. Esto ralentiza a la gente y cualquier cosa que obstaculice el flujo y la productividad y crea frustraciones debe reducirse o eliminarse.

Según mi investigación, parece que no hay forma de migrar directamente de Vault a SVN. Quizás es posible utilizar otro sistema de control de versiones como un paso intermedio de migración: Bóveda -> OtherSourceControlProduct -> SVN

... pero creo que podríamos guiar las confirmaciones (como sugirió Joshua al principio) de este hilo) o, lo que es más probable, simplemente comprometer las últimas revisiones y dejar repositorios de Vault durante un tiempo para el historial, etc. Esto realmente nos da una buena oportunidad para limpiar y refactorizar nuestro código y jerarquía actual.

Paul

Cuestiones relacionadas