update unpopulated subrepo submodules submodule remove recursive git git-submodules

unpopulated - ''git submodule update--init--recursive'' VS ''git submódulo foreach--recursive git submódulo actualización--init''



gitlab submodules (1)

Tengo git repo que tiene submódulos anidados. ¿Cuál es la diferencia entre los siguientes 2 comandos?

git submodule update --init --recursive git submodule foreach --recursive git submodule update --init


git submodule update --init --recursive

El comando de update submódulo recurrirá en los submódulos registrados, actualizará e iniciará (si es necesario) ellos y cualquier submódulo anidado dentro.

git submodule foreach --recursive git submodule update --init

foreach evaluará el comando en cada submódulo desprotegido. Por lo tanto, actualizará e iniciará (si es necesario) cada submódulo y cualquier submódulo anidado dentro de --recursive .

Entonces, al final, ambos comandos lograrán lo mismo. Simplemente la ejecución difiere, el primer comando no entrará en cada directorio para ejecutar el comando.