Mam podmoduł git w moim głównym repozytorium git. Jak rozumiem, repozytorium główne przechowuje wartość SHA (gdzieś ...), wskazując na konkretne zatwierdzenie podmodułu, z którym jest „połączone”.
Wszedłem do mojego podmodułu i napisałem git checkout some_other_branch
. Nie mam pojęcia, z jakiego popełnienia pochodzę.
Chciałbym przywrócić ten wskaźnik, aby repozytorium główne i moduł podrzędny były ponownie zsynchronizowane.
Moim pierwszym (prawdopodobnie naiwnym) odruchem było stwierdzenie git reset --hard
- to wydaje się działać na wszystko inne. Ku mojemu zdziwieniu nie zadziałało to w tym scenariuszu.
Więc wymyśliłem, że mogę pisać git diff
, zanotować identyfikator SHA, który miał wskaźnik podmodułu, a następnie udać się do podmodułu i git checkout [SHA ID]
... ale na pewno musi być łatwiejszy sposób?
Ponieważ wciąż uczę się o modułach podrzędnych git, prosimy o poprawienie mojej terminologii, jeśli są słowa na koncepcje, których nie znam.
--init
. Bez tego submoduły pozostałyby w stanie z(new commits)
. Mimo że moje moduły podrzędne zostały już zainicjowane.