Extraiga los submódulos de git después de clonar el proyecto de GitHub


90

Tengo un proyecto que tiene submódulos especificados en él. Todo funciona bien en la máquina de desarrollo. He comprometido el .gitmodulesarchivo y he sacado la producción. Sin embargo, no extrajo submódulos.

Si entro en los directorios del submódulo y llamo git pull, no pasa nada.

¿Cuál es la forma correcta de extraer esos submódulos en el nuevo proyecto?

Respuestas:


140

Desde la raíz del repositorio, simplemente ejecute:

git submodule update --init

8
Creo que esto realmente actualizará sus dependencias. Creo S. Russel tenía el comando de la derecha en su comentario a continuación:git pull --recurse-submodules
Spencer

37

Si necesita extraer cosas para submódulos en sus repositorios de submódulos, use

git pull --recurse-submodules

Pero esto no comprobará las confirmaciones adecuadas (a las que apunta su repositorio principal) en los submódulos

Para verificar las confirmaciones adecuadas en sus submódulos, debe actualizarlas después de extraer usando

git submodule update --recursive

1
git submodule update --recursivees lo que necesitaba después de la primera vez git clone, pero olvidé hacerlo --recursivea la primera ¡Gracias!
mbb

8
Esto no parece funcionar para mí. Los submódulos permanecen vacíos.
CodeMonkey

@CodeMonkey es lo mismo para mí.
linkerx

6
Puede que sea demasiado tarde para la fiesta, pero para cualquiera que haya terminado aquí: git submodule update --init --recursiveresuelva mi problema
Iglesk

21

Si hay submódulos anidados, necesitará usar:

git submodule update --init --recursive
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.