मेरे मुख्य git रेपो में एक git सबमॉड्यूल है। जैसा कि मैंने इसे समझा, मुख्य रेपो एक SHA मान (कहीं ...) संग्रहीत करता है, जो कि सबमॉडल की विशिष्ट प्रतिबद्धताओं की ओर इशारा करता है कि यह "जुड़ा हुआ है"।
मैं अपने सबमॉडल में गया और टाइप किया git checkout some_other_branch
। मुझे पता नहीं है कि मैं किस अपराध से आया हूं।
मैं उस पॉइंटर को वापस करना चाहूंगा ताकि मुख्य रेपो और सबमॉड्यूल फिर से सिंक हो जाएं।
मेरी पहली (शायद भोली) वृत्ति यह कहने की थी git reset --hard
- जो हर चीज के लिए काम करती है। मेरे आश्चर्य के लिए, यह इस परिदृश्य के लिए काम नहीं किया।
इसलिए मुझे पता चला है कि मैं टाइप कर सकता हूं git diff
, SHA आईडी पर ध्यान दें जो सबमॉड्यूल पॉइंटर का उपयोग करता था, और फिर सबमॉड्यूल में सिर और git checkout [SHA ID]
... लेकिन निश्चित रूप से एक आसान तरीका होना चाहिए?
जैसा कि मैं अभी भी गिट सबमॉडल्स के बारे में सीख रहा हूं, कृपया मेरी शब्दावली को ठीक करने के लिए स्वतंत्र महसूस करें यदि ऐसी अवधारणाएं हैं जो मुझे नहीं पता हैं।
--init
। इसके बिना, सबमॉडल्स एक राज्य में रहेंगे(new commits)
। हालांकि मेरे सबमॉड्यूल पहले से ही आरंभिक थे।