tipos - Repositorio de Git dentro del repositorio de Git
git submodule update recursive (3)
Puedes anidar dos repositorios de git sin usar submódulos. Supongamos que ChildRepo es un subdirectorio de ParentRepo, y ambos son repositorios de git.
+ ParentRepo
- ChildRepo
Si agrega un archivo a ChildRepo, ParentRepo lo ignorará. Cuando lo compromete, se agregará a ChildRepo. No es posible agregar archivos dentro de ChildRepo a ParentRepo.
Más información: ¡ Retiros de reposición anidados de GIT!
Esta pregunta ya tiene una respuesta aquí:
Tengo un repositorio principal de git A y estamos usando fuentes de otro repositorio de git B en un subdirectorio de nuestro proyecto principal. Ahora sería bueno tener el repositorio B desprotegido dentro del repositorio A en este subdirectorio usado. Si alguien más clona el repositorio, por supuesto, debería obtener nuestro repositorio principal A y dentro de ese automáticamente el repositorio B.
Déjame visualizar la estructura del directorio:
+ main_repository - the root directory of the main Repository + src - directory containing the source + foreignRepo - this should be the root directory of another git repo + binaries + other
Esto también debe conocerse en el repositorio remoto, solo una copia local no me ayuda, porque otras personas verifican esto y deben poder compilar todo.
Querrá leer sobre los submódulos de Git .
Utilice el git subtree
de git en la versión de git 1.7.11 y superior. git subtree
es superior al submódulo de git porque:
- La gestión de un flujo de trabajo simple es fácil. Versiones anteriores de git son compatibles (incluso antes de v1.5.2)
- El código del subproyecto está disponible justo después de que se complete el clon del superproyecto.
-
git subtree
no requiere que los usuarios de su repositorio aprendan nada nuevo, pueden ignorar el hecho de que está utilizando el subárbol para administrar las dependencias. -
git subtree
no agrega nuevos archivos de metadatos como lo hace elgit submodule
(como.gitmodule
) - El contenido del subárbol se puede modificar sin tener una copia de repositorio separada de la dependencia en otro lugar
Además, si necesita separar un subárbol de su repositorio existente en un nuevo repositorio , la git subtree split
puede ayudarlo con eso.