मैं उस कमिट का पूरा प्रतिबद्ध संदेश कैसे प्राप्त करूं जिसे मैं हार्ड रीसेट करता हूं?
git reflog
का उपयोग करके इसे करने का एक तरीका हो सकता है, हालांकि, क्या हमारे पास दूसरा तरीका है?
1 उत्तर
आप अपने पिछले HEAD के माध्यम से वापस जाने के लिए git log -g
का उपयोग कर सकते हैं, लेकिन इसमें इस बारे में जानकारी नहीं होगी कि HEAD क्यों स्थानांतरित हुआ।
आप लॉग को सीधे .git/logs/HEAD
से पढ़ सकते हैं। यह आपको कुछ भी नहीं दिखाएगा git reflog
नहीं होगा, लेकिन रीसेट की आईडी खोजने के लिए एक उपकरण विकसित करना आसान हो सकता है।
git reflog
आपके सभी पिछले HEAD (आपके द्वारा चेक किए गए कमिट) को क्रम में दिखाएगा और HEAD क्यों स्थानांतरित हुआ। git reflog
, git log
के समान सभी विकल्प अपनाता है। उदाहरण के लिए, आप पूर्ण प्रतिबद्ध संदेशों को देखने के लिए git reflog --pretty=medium
के साथ अधिक संदर्भ प्राप्त कर सकते हैं। हालांकि, git reflog
से कमिट आईडी और फिर git log <that id>
के साथ कमिट मैसेज प्राप्त करना आसान है।
एक रीसेट स्पॉट करना आसान होना चाहिए। उदाहरण के लिए, यहां एक git reset --hard HEAD^1
है।
70cc722 (HEAD -> master) HEAD@{0}: reset: moving to HEAD^1
5cbd5ea HEAD@{1}: reset: moving to HEAD
संबंधित सवाल
नए सवाल
git
Git एक ओपन-सोर्स वितरित संस्करण नियंत्रण प्रणाली (DVCS) है। Git उपयोग और वर्कफ़्लो से संबंधित प्रश्नों के लिए इस टैग का उपयोग करें। जीआईटी-संबंधित मुद्दों के लिए [github] टैग का उपयोग केवल इसलिए न करें क्योंकि GitHub पर एक रिपॉजिटरी को होस्ट किया जाना है। इसके अलावा, सामान्य प्रोग्रामिंग प्रश्नों के लिए इस टैग का उपयोग न करें जो कि Git रिपॉजिटरी को शामिल करने के लिए होता है।