J'ai cloné un référentiel et effectué quelques modifications locales.Comment annuler une commande de sous-module validé
Puis j'ai fait un git pull origin
pour obtenir les changements mis à jour de l'origine. Je fais ensuite un git push
pour pousser vers mon dépôt cloné. Cependant, les sous-modules ne sont pas poussés:
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
typechange: third_party/aten (new commits)
modified: third_party/cub (new commits)
modified: third_party/eigen (new commits)
modified: third_party/gloo (new commits)
modified: third_party/nccl (new commits)
Je ne savais pas que je pouvais utiliser git submodule update
pour les mettre à jour. Je les ai ajoutés, validés et poussés vers mon dépôt cloné.
Ceci est faux. Mon référentiel cloné est en retard sur l'origine. Maintenant, j'ai une demande de traction à l'origine et cette validation est incluse.
Je me demande s'il existe un moyen facile d'annuler cela. Pour forcer mon référentiel cloné à utiliser la même version que l'origine.
Merci beaucoup!
Merci pour votre suggestion. Ce n'est pas le dernier commit que d'avoir ce problème, il y a beaucoup de commits avant. Je suppose que votre suggestion perdrait tous les commits afterwords. Existe-t-il un moyen de changer uniquement la version du sous-module mais de laisser tous les autres commits intacts? Merci. – Fei
ok alors, une façon est de rétablir le commit ayant le problème 'git revert'. L'autre façon consiste à vérifier le dossier sous-module uniquement à un commit spécifique 'git checkout remote/branch - '. –
Merci. J'ai utilisé 'git chdeckout remote/branch -' et il a retiré les dernières modifications de la télécommande. –
Fei