Question

Après un certain temps, je voulais mettre à jour mon dépôt Git, puis quelque chose s’est mal passé. Quel est le bon moyen de sortir de cette situation?

mblsha@siruba:~/src/psi/ $ git status
iris: needs merge
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   modified:   src/common.cpp
#
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#
#   unmerged:   iris
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   gupdate.sh
mblsha@siruba:~/src/psi/ $ git submodule status
+cf237ef8f3d9dc058dbde47e6973e6388608ce60 iris (heads/master)
+cf237ef8f3d9dc058dbde47e6973e6388608ce60 iris (heads/master)
+cf237ef8f3d9dc058dbde47e6973e6388608ce60 iris (heads/master)
mblsha@siruba:~/src/psi/ $ cd iris 
mblsha@siruba:~/src/psi/iris/ $ cat .git/HEAD 
cf237ef8f3d9dc058dbde47e6973e6388608ce60
Était-ce utile?

La solution

En ce qui concerne les sous-modules git, presque tous les problèmes que vous rencontrez peuvent être résolus par:

1. deleting the submodule (rm -r iris)
2. recreating it again (git submodule update)

Évidemment, si vous avez apporté des modifications locales à votre sous-module, cela les effacera de façon permanente. Par conséquent, si vous avez des modifications locales, assurez-vous de les avoir appliquées en premier.

Autres conseils

J'ai posté une question similaire. ici sur stackoverflow et j'ai fini par y répondre moi-même, mais j'ai constaté que l'utilisation de git reset HEAD iris fonctionnait pour mon problème de conflits de sous-modules.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top