2008-09-11 16 views
9

? Estoy obligado a usar VSS en el trabajo, pero uso SVN para un repositorio personal. ¿Cuál es la mejor manera de sincronizar VSS y sincronizar?¿Cómo sincronizo entre VSS y SVN

+0

¿Alguna razón por la cual la respuesta aceptada no ha sido seleccionada? –

Respuesta

0

Lo que he hecho en el pasado es el siguiente:

  1. Asegúrese de que todos mis cambios se han comprometido a svn: // tronco
  2. hacen un Obtener la última de VSS en mi copia de trabajo.
  3. Fusionar manualmente los cambios en mi copia de trabajo.
  4. cometer el código resultante de la concentración en la propiedad svn: // tronco
  5. hacer un diff VSS, y obtenga los archivos con las diferencias (sin sobrescribir los archivos)
  6. Comprobar en esos archivos.
4

para deshacerse de la etapa de mezcla manual, que podría utilizar una rama separada SVN (SVN: // ramas/VSS) de la siguiente manera:

  1. Crear una copia de trabajo de svn: // ramas/VSS
  2. hacer un VSS recibir las últimas en esta copia de trabajo
  3. sVN
  4. svn merge desde sVN: // tronco
  5. svn commit
  6. Haga un diff VSS y la salida de todos los archivos (sin sobrescribir) con diferencias
  7. Comprobar en esos archivos
  8. de reintegración svn: // ramas/VSS en svn: // tronco
2

También puede tratar esta como un proveedor suministra rama como se define en el libro redbean: Vendor Branches

Con esto, el flujo básico sería:

  1. tener una vendo r rama "ramas/VSS/corriente" que contienen el código más reciente de VSS
  2. Tag la versión actual como "ramas/VSS/2008-09-15"
  3. día siguiente, conseguir los nuevos archivos en "actual"
  4. Tag otra vez en "ramas/VSS/2008-09-16"
  5. combinar las diferencias entre las dos etiquetas en el tronco, la resolución de conflictos
  6. Eliminar etiquetas antiguas como sea necesario

Ésta es realmente la técnica que hemos utilizado al migrar de VSS a SVN. Si le importa el viaje de regreso desde SVN-> VSS, solo tendrá que diferenciar entre trunk y branches/VSS/current y aplicar los diffs a VSS.

Cuestiones relacionadas