Sincronizar GIT y ClearCase

Actualmente estoy trabajando en ClearCase y ahora estoy migrando a GIT. Pero necesitamos esta migration de forma tal que todo el trabajo se realice en GIT y los datos se sincronizarán con el flujo de ClearCase. Tendremos los mismos nombres de twig y de secuencia en ambos GIT y CC, por lo que la creación de scripts no debería ser un problema. El problema aquí es

¿Alguien puede sugerir cuál es el mejor model para sincronizar CC y GIT?

  1. Tener todas las Vobs en CC como repo único en GIT, y tener la stream principal en CC como varias twigs en GIT. – Repo Single GIT (VOBS) y muchas twigs (flujos CC). – Esto ocupa less espacio ya que los VOB se guardan como un solo repository con muchas twigs.

  2. Tener sucursales CC importantes como repositorys GIT independientes y cada repository con todas las VOB CC. – Muchos repositorys de GIT para muchas sucursales de CC: esto ocupará mucho espacio a medida que los VOB se repliquen.

¿Cuál crees que es la mejor manera de mantenerlo sincronizado con ClearCase?

Tener todas las Vobs en CC como repo único en GIT, y tener la stream principal en CC como varias twigs en GIT

No y sí

Tener sucursales CC importantes como repositorys GIT independientes y cada repository con todas las VOB CC

No y no

Al volver a leer mi respuesta sobre los límites de Git , no debes tratar de meter todo en un repository de Git.
Consulte también " ¿Cuáles son los conceptos claros de cada desarrollador? " Para una comparación entre ClearCase y Git.

Stream se puede importar de forma segura como una sucursal.
Pero los VOB no son necesariamente un Git Repo.

Si está utilizando UCM, recomendaría un repository de Git por componente de UCM.

De todos modos, debe registrar en su Git Repo una forma de saber qué vista de ClearCase utilizar para sincronizar (a través de un simple clearfsimport ) sus datos.
La vista utilizada para la reimport de datos de ClearCase será una vista UCM asociada automáticamente a la transmisión correcta para el VOB correcto.


Nota: menciono en " Cómo unir git a ClearCase? " Una solución más simple, pero que no importa todo el historial en un repository de Git.

Si bien no necesariamente lo sugiero como la "mejor" forma de sincronizar los dos, puede importar el historial y devolver los cambios a Clearcase a través de mi herramienta git-cc, como se menciona aquí .

En cuanto a las sucursales y los repos, me gustaría ir con una regla de vob == one git repo, ya que git repo está destinado a ser utilizado por proyecto único, de la misma manera que para vobs.

En cuanto a las sucursales, los nombres de las sucursales en vobs / repos deben coincidir. Eche un vistazo a los submodules en git para ver si esto se puede usar en su caso.

Lo que personalmente me gustaría ver es un back-end maduro de git-cc, que me permita usar git en mi dev-box, mientras puedo sincronizar con el repository corporativo de CC que estoy obligado a usar.