¿Cómo sincronizo entre VSS y SVN?
visual-sourcesafe sync (3)
Lo que hice en el pasado es lo siguiente:
- Asegúrate de que todos mis cambios estén comprometidos con svn: // trunk
- Haga una actualización de VSS en mi copia de trabajo.
- Combinar manualmente los cambios en mi copia de trabajo.
- Confirmar el código fusionado en el tronco svn: //
- Haz una diferencia VSS y revisa cualquier archivo con diferencias (sin sobreescribir archivos)
- Revisa esos archivos.
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?
Para deshacerse del paso de fusión manual, podría usar una rama svn separada (svn: // branches / VSS) de la siguiente manera:
- Cree una copia de trabajo de svn: // branches / VSS
- Haz un VSS Get Latest en esta copia de trabajo
- svn commit
- svn fusionar desde svn: // trunk
- svn commit
- Haz una diferencia de VSS y revisa todos los archivos (sin sobrescribir) con diferencias
- Compruebe en esos archivos
- reintegrar svn: // branches / VSS en svn: // trunk
También podría tratar esto como una sucursal suministrada por el proveedor como se define en el libro redbean: Ramas del proveedor
Con esto, el flujo básico sería:
- Tener una rama de proveedor "branches / VSS / current" que contenga el último código de VSS
- Etiquete la versión actual como "branches / VSS / 2008-09-15"
- Al día siguiente, consigue los nuevos archivos en "actual"
- Vuelva a etiquetar en "branches / VSS / 2008-09-16"
- Combina las diferencias entre las dos etiquetas en el enlace troncal, resolviendo conflictos
- Eliminar etiquetas antiguas según sea necesario
Esta es en realidad la técnica que utilizamos 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.