Ho un sottomodulo git nel mio repository git principale. Da quanto ho capito, il repository principale memorizza un valore SHA (da qualche parte ...), indicando il commit specifico del sottomodulo a cui è "collegato".
Entrai nel mio sottomodulo e digitai git checkout some_other_branch
. Non ho idea da quale impegno venissi.
Vorrei ripristinare quel puntatore in modo che il repository principale e il sottomodulo siano nuovamente sincronizzati.
Il mio primo (probabilmente ingenuo) istinto è stato quello di dire git reset --hard
che sembra funzionare per tutto il resto. Con mia sorpresa, non ha funzionato per questo scenario.
Quindi ho capito che posso scrivere git diff
, annotare l'ID SHA che aveva il puntatore del sottomodulo, quindi dirigersi nel sottomodulo e git checkout [SHA ID]
... ma sicuramente ci deve essere un modo più semplice?
Dato che sto ancora imparando a conoscere i sottomoduli di Git, sentiti libero di correggere la mia terminologia se ci sono parole per concetti che non conosco.
--init
. Senza di essa, i sottomoduli rimarrebbero in uno stato con(new commits)
. Anche se i miei sottomoduli erano già stati inizializzati.