git externo para requestes de extracción

Trabajé con SVN hasta hoy, así que no estoy muy familiarizado con las características avanzadas de git.

Quiero clonar un repository que contenga algunos files que utilizo en mi proyecto. Mi proyecto está en un repository propio así que cuando comprometo los files van dentro de mi proyecto. Si los cambio, también están comprometidos en mi proyecto.

Sin embargo, quiero que se vean como una request de extracción al repository desde el que lo tomé.

En SVN utilicé svn-externals para eso. ¿Cómo puedo hacerlo en git para que sea fácil?

Puedes usar el git submodule para eso.

La versión más reciente de git ahora permite a los submodules de git rastrear las últimas confirmaciones de un repository de submodule.
Git1.8.2 :

El " git submodule " comenzó a aprender un nuevo modo para integrarse con la punta de la twig remota (en lugar de integrarse con la confirmación registrada en el gitlink del superproyecto).

 # add submodule to track master branch git submodule add -b master [URL to Git repo]; # update your submodule git submodule update --remote 

Desde la página man:

 --remote 

Esta opción solo es válida para el command de update .
En lugar de usar el SHA-1 grabado del superproyecto para actualizar el submodule, use el estado de la twig de seguimiento remoto del submodule.

Eso está cerca de un svn external comportamiento habitual svn external .

También hay subtreees .

La principal ventaja que encuentro en los subtreees sobre los submodules es que los contenidos en la carpeta pueden modificarse y retrotraerse desde el mismo repository padre, aunque los commands para insert files en el subtree son diferentes (git subree push push -P … )

También otras personas que clonan el repo padre obtienen todos los contenidos sin tener que lidiar con los commands del subtree ellos mismos. Creo que con los submodules cada persona debería configurarlos y administrarlos individualmente.