Hola a todos.
Os comento mi situación:
Estoy usando CVS para almacenar proyectos estándares y de clientes con una estructura más o menos así:
- repositorios
----------------> Estandar A
----------------> Estandar B
----------------> Estandar C
- respositorios_clientes
---------------------> cliente 1
---------------------> cliente 2
---------------------> cliente 3
---------------------> etc.
En el caso de los repositorios estándar me da más igual, pero en el caso de los clientes (unos 3300 entre activos y abandonados) me viene muy bien tenerlos aglutinados en un repositorio superior para la hora de descargas masivas para copias, por ejemplo. Lo normal, ahora con CVS, es hacer un checkout del cliente 1, trabajar con él y comitearlo, pero cada mes, hago un checkout de repositorios_clientes, para obtener una copia completa y sacarla de la oficina.
En CVS esto es bastante fácil de hacer ya que solo hay que crear carpetas y añadirlas al repositorio, esto se hace de forma global, no carpeta a carpeta, y luego los checkout se hacen nombrando la carpeta del cliente y punto final.
Ahora me estoy viendo en la necesidad de migrar a GIT y me gustaría seguir con esta filosofía y por mucho que leo no consigo ver cómo hacerlo.
He intentado con los submodulos pero claro, si no lo he entendido mal, tendría que crear primero los 3300 respositorios para luego añadirlos como submodulos al repositorios_clientes, algo impensable.
Sé que puede ser una estructura poco común, pero viene de la que usábamos hace años, antes de implementar un control de versiones y CVS se adaptó a la perfección a nuestra estructura.
Si esto se puede hacer con otro software (SVN, Mercurial...) me daría lo mismo. Pensaba en GIT porque parece, a priori, la mejor opción.
Muchas gracias a todos.