J'ai un sous-module git dans mon dépôt git principal. Si je comprends bien, le référentiel principal stocke une valeur SHA (quelque part ...), pointant vers le commit spécifique du sous-module auquel il est "lié".
Je suis entré dans mon sous-module et j'ai tapé git checkout some_other_branch
. Je n'ai aucune idée de quel engagement je viens.
Je voudrais revenir sur ce pointeur afin que le dépôt principal et le sous-module soient à nouveau synchronisés.
Mon premier instinct (probablement naïf) était de dire git reset --hard
- cela semble fonctionner pour tout le reste. À ma grande surprise, cela n'a pas fonctionné pour ce scénario.
J'ai donc compris que je pouvais taper git diff
, noter l'identifiant SHA que le pointeur de sous-module avait, puis me diriger vers le sous-module et git checkout [SHA ID]
... mais il doit sûrement y avoir un moyen plus simple?
Comme j'apprends toujours les sous-modules git, n'hésitez pas à corriger ma terminologie s'il y a des mots pour des concepts que je ne connais pas.
--init
. Sans cela, les sous-modules resteraient dans un état avec(new commits)
. Même si mes sous-modules étaient déjà initialisés.