git sous-module de mise à jour --init --recursive' VS 'git sous-module foreach --recursive git sous-module de mise à jour --init'

j'ai git repo qui a imbriqué des sous-modules. Quelle est la différence entre les 2 commandes ci-dessous?

git submodule update --init --recursive

git submodule foreach --recursive git submodule update --init
33
demandé sur exhuma 2014-06-05 14:33:58

1 réponses

git submodule update --init --recursive

Le sous-module update la commande va revenir dans les sous-modules enregistrés, les mettre à jour et les initialiser (si nécessaire) et tous les sous-modules imbriqués à l'intérieur.

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

foreach évaluera la commande dans chaque sous-module vérifié. Ainsi, il mettra à jour et initera (si nécessaire) chaque sous-module et tous les sous-modules imbriqués à l'intérieur en raison de --recursive.

ainsi, à la fin, les deux commandes atteindront la même chose. Simplement l'exécution diffère, la première commande ne marche pas dans chaque répertoire pour exécuter la commande.

32
répondu Martin 2015-02-13 16:13:06