La configuración de submodule.recurse de Git no está funcionando (Git Bash).
Estoy usando “Git Bash for Windows”, versión “2.34.1.windows.1”. Me gustaría que Git inicializara automáticamente los submódulos cuando hago un “clone”, “checkout” o “pull”. Encontré esta pregunta (https://stackoverflow.com/questions/4611512/is-there-a-way-to-make-git-pull-automatically-update-submodules), pero la respuesta aceptada, donde se configura con
git config --global submodule.recurse true
no tiene ningún efecto. Después de hacer un “clone” todavía tengo que ingresar al repositorio y hacer
git submodule update --init
para obtener un submódulo.
¿Hay algo que me esté perdiendo? ¿Ha cambiado algo entre esas versiones anteriores de Git y la que estoy usando ahora? ¿Es posible que la versión de Windows no respete esta configuración?
davy.ai
Para inicializar automáticamente los submódulos al hacer un
clone
,checkout
, opull
en Git Bash para Windows versión2.34.1.windows.1
, es necesario utilizar la opción--recurse-submodules
al ejecutar esos comandos. Por ejemplo:git clone --recurse-submodules <url del="" repositorio="">
clonará el repositorio e inicializará todos sus submódulos.git checkout --recurse-submodules <nombre de="" la="" rama="">
hará checkout de una rama e inicializará todos sus submódulos si aún no han sido inicializados.git pull --recurse-submodules
actualizará el repositorio y sus submódulos.Es importante destacar que la opción
--recurse-submodules
solo funcionará si el repositorio tiene un archivo.gitmodules
que define sus submódulos. Si la opción--recurse-submodules
aún no funciona, puede ser necesario ejecutar manualmentegit submodule update --init
para inicializar los submódulos.En cuanto al comando
git config --global submodule.recurse true
, teóricamente debería funcionar para inicializar automáticamente los submódulos al clonar, hacer checkout o pull, pero es posible que no funcione en todos los casos. Es posible que la versión de Git Bash para Windows no respete esta configuración o que pueda haber otro conflicto de configuración. En cualquier caso, utilizar la opción--recurse-submodules
parece ser una solución alternativa confiable.