GitHub: ¿Es posible tener un repository de repositorys?

Guardo mis proyectos de php en una count privada de GitHub.

Ahora, por ejemplo, tengo diferentes componentes (set de noticias, package de usuario, etc.) y un proyecto que los usa todos juntos (por ejemplo, un website personalizado). ¿Puedo de alguna manera vincularlos?

¿O debería usar solo repositorys de componentes?

Saludos

EDITAR:

Hay una manera fácil de hacerlo, por ejemplo, para el proyecto symfony2. Siempre hay componentes que también están disponibles en el repository principal.

Por ejemplo: https://github.com/symfony/OptionsResolver

Symfony / OptionsResolver-> syfmony / symfony-> symfony / standard-edition

La forma en que manejo las dependencies en los proyectos Symfony 2 Git es esta:

El proyecto principal está bajo Git. Las dependencies externas (packages y todas las cosas de proveedores) van al file .deps (o composer.json). Luego, o bien ejecuto php bin/vendors install o composer install para instalar las dependencies.

Las dependencies se instalarán como repositorys de Git, así que, si quisiera, podría hacer un cd en ellas y comprometerlas allí y presionarlas si tengo derechos. Esto facilita la edición de sus propios packages, sin necesidad de clonar un repository de packages por separado solo para poder realizar cambios allí.

También tengo esta estructura:

 src\Company\ShanetworkingBundle src\Company\ProjectBundle 

Donde ShanetworkingBundle simplemente se especifica como una dependencia y la ruta de installation de destino está en src\Company .

Estoy usando ShanetworkingBundle en todos mis proyectos. Si necesito hacer cambios en él, los hago en uno de los proyectos, luego cd src\Company\ShanetworkingBundle , me comprometo con él y lo cd src\Company\ShanetworkingBundle , y lo retiro de todos los proyectos que lo usan cuando necesito los cambios.

Con deps , puedes hacer targeting como:

 [AcmeAwesomeBundle] git=http://github.com/johndoe/Acme/AwesomeBundle.git target=../src/Acme/AwesomeBundle 

Si usas Composer, probablemente quieras esto: http://getcomposer.org/doc/01-basic-usage.md#autoloading

Es posible que desee echar un vistazo a los submodules.

http://git-scm.com/book/es/Git-Tools-Submodules

Puede usar el compositor para manejar dependencies. Esto no bloqueará los subproyectos a una confirmación específica como lo hacen los submodules. Symfony usa compositor.

Si solo desea importar todos los files de varios repositorys en otro repository y poder actualizarlos según sea necesario, creo que puede simplemente agregar todos los demás repositorys a los principales como repositorys remotos.

Obviamente, respalde todo antes de intentar esto, pero creo que simplemente quiere usar "git remote add [nombre arbitrario de otro repository] [location de otro repository]", "git fetch [nombre arbitrario de otro repository]" y "get" fusionar [nombre arbitrario de otro repository] / [twig de otro repository] ". Puedes hacer esto con tantos repositorys diferentes como quieras. Por ejemplo, todos mis repositorys ahora comienzan como clones del repository para el marco con el que están construidos. No importa un poco que mis proyectos realmente no tengan nada que ver con el marco, excepto que lo usan como punto de partida.

Entonces querrías algo como esto:

 git remote add news-bundle git://example.com/news-bundle.git git merge news-bundle/master git remote add user-bundle git://example.com/user-bundle.git git merge user-bundle/master 

Luego, cuando haya realizado más cambios en el set de noticias, puede actualizar el otro repository de la siguiente manera:

 git fetch news-bundle git merge news-bundle/master