Subproyectos Git?

Estoy trabajando en un par de complementos de Joomla diferentes, pero quiero mantenerlos como repositorys git separados ya que tienen diferentes equipos de desarrollo (e incluso organizaciones). Sin embargo, también me gustaría mantenerlos como un solo directory compartiendo la misma base de Joomla (que es ignorada por .gitignore). Debido a la estructura de Joomla, esto puede ser un poco complicado ya que tiene la siguiente estructura:

/joomla/ |--/administrator/ |--|--/components/ |--|--|--/component_a/ |--|--|--/component_b/ |--|--/language/ |--|--|--/en-GB/ |--|--|--|--/component_a_lang.ini |--|--|--|--/component_b_lang.ini |--/components/ |--|--/component_a/ |--|--/component_b/ |--/language/ |--|--/en-GB/ |--|--|--/component_a_lang.ini |--|--|--/component_b_lang.ini 

Sé que podría hacer un repository central y usar twigs para cada proyecto secundario y solo tener cuidado con el uso del control remoto correcto para el subproyecto correcto. ¿Pero existe una forma más fácil (¿submodules?) De mantener todos los subproyectos en el mismo directory, así que si quisiera copyr todo para la testing, ¿no tendría que cambiar de twig y jugar con copy-pasta?

Normalmente recomendaría el uso de submodules, pero en este caso no son realmente apropiados debido a la estructura del proyecto.

Un submodule se coloca en un único directory, por lo que no puede distribuirlos en todo el proyecto.

Una posible solución sería poner todos esos files en un directory y usar enlaces simbólicos para ponerlos en el lugar correcto. Pero esto tiene varios inconvenientes. Tendrá que volver a crear todos los enlaces simbólicos en cada repository, y también puede causar problemas para los usuarios de Windows.

Como dice @Ikke, la forma en que se distribuye el código entre los directorys hace que sea engorroso usar submodules para contenerlos.

Creo que usaría twigs separadas para las pistas separadas de desarrollo. Son "características", ¿verdad? ¿Más o less? Entonces, probablemente sea bastante apropiado tratarlos como twigs características.

Si su depósito central está siendo atendido por gitolite, puede configurar el acceso por sucursal para separar usuarios y grupos. Puede hacerlo para que todos puedan leer cada twig (importante para probar), pero solo los grupos bendecidos pueden empujar a su propia twig.

    Intereting Posts