जवाबों:
आपके पास कम से कम 5 अलग-अलग तरीके हैं, जिन्हें आपने वर्तमान में एक git bisectसत्र के दौरान अपनी कार्यशील प्रतिलिपि में जांच लिया है ( ध्यान दें कि विकल्प 1-4 भी तब काम करेगा जब आप एक बिस्केट नहीं कर रहे हों ):
git show।git log -1।git status।git bisect visualize।मैं नीचे प्रत्येक विकल्प के बारे में विस्तार से बताऊंगा।
जैसा कि इस बात के सामान्य प्रश्न के उत्तर में बताया गया है कि यह निर्धारित करने के लिए कि आपने वर्तमान में चेक-आउट किया है (न केवल दौरान git bisect), आप पैच आउटपुट को दबाने git showके -sविकल्प के साथ उपयोग कर सकते हैं :
$ git show --oneline -s
a9874fd Merge branch 'epic-feature'
आप केवल यह git log -1पता लगाने के लिए भी कर सकते हैं कि आप वर्तमान में किस प्रतिबद्ध हैं।
$ git log -1 --oneline
c1abcde Add feature-003
Git संस्करण 1.8.3+ में (या यह एक पुराना संस्करण था?), यदि आपके पास अपनी बैश प्रॉम्प्ट है जिसे आपने अपनी वर्किंग कॉपी में चेक किया हुआ करंट ब्रांच दिखाने के लिए कॉन्फ़िगर किया गया है, तो यह आपको आपके द्वारा जांचे गए वर्तमान कमेंट को भी दिखाएगा। एक द्विशात सत्र के दौरान या जब आप "अलग" अवस्था में होते हैं। नीचे दिए गए उदाहरण में, मैंने वर्तमान में c1abcdeजाँच की है:
# Prompt during a bisect
user ~ (c1abcde...)|BISECTING $
# Prompt at detached HEAD state
user ~ (c1abcde...) $
इसके अलावा Git संस्करण 1.8.3+ (और संभवतः पहले, फिर से निश्चित नहीं) के अनुसार, रनिंग git statusआपको यह भी दिखाएगी कि आपने एक द्विशताब्दी के दौरान क्या जाँच की है और जब आप अलग अवस्था में हों:
$ git status
# HEAD detached at c1abcde <== RIGHT HERE
अंत में, जब आप एक काम कर रहे होते हैं git bisect, तो आप बस लॉन्च करने के लिए git bisect visualizeइसके अंतर्निहित उपनाम git bisect viewका उपयोग या उपयोग कर सकते हैं gitk, ताकि आप ग्राफिक रूप से देख सकें कि आप किस पर प्रतिबद्ध हैं, साथ ही साथ यह भी कहता है कि आपने अभी तक खराब और अच्छा के रूप में चिह्नित किया है। मुझे पूरा यकीन है कि यह संस्करण 1.8.3 से पहले अच्छी तरह से अस्तित्व में है, मुझे यकीन नहीं है कि यह किस संस्करण में पेश किया गया था:
git bisect visualize
git bisect view # shorter, means same thing

git statusजब तक आप अलग अवस्था में नहीं होते हैं, तब तक आपको कमिट आईडी नहीं दिखाता है। अन्यथा यह कहता है "शाखा पर जो भी हो "। git showहालांकि काम करता है
आप बस कर सकते हैं:
git rev-parse HEAD
थोड़ा और समझाने के लिए: किसी भी विदेशी तरीके कीgit rev-parse व्याख्या करने के लिए git की मूल कमांड है जिसे आप एक कमिट का नाम निर्दिष्ट कर सकते हैं और HEADयह आपके वर्तमान कमिटमेंट या ब्रांच का संदर्भ है। (एक git bisectसत्र में, यह एक शाखा के बजाय सीधे एक कमिट ("अलग किया गया") को इंगित करता है।
वैकल्पिक रूप से (और याद रखने में आसान) बस करना होगा:
git show
... जो कमिटमेंट दिखाने के लिए डिफॉल्ट करता है वह इशारा करता HEADहै। अधिक संक्षिप्त संस्करण के लिए, आप यह कर सकते हैं:
$ git show --oneline -s
c0235b7 Autorotate uploaded images based on EXIF orientation
git rev-parse HEADतो कचरे के सभी विकल्पों के लिए कोई प्रसंस्करण नहीं चाहिए।
$ git रेव-पार्स HEAD 273cf91b4057366a560b9ddcee8fe58d4c21e6cb
अपडेट करें:
वैकल्पिक रूप से (यदि आपके पास टैग हैं):
(एक संस्करण का नामकरण करने के लिए अच्छा है, वापस जाने के लिए बहुत अच्छा नहीं है।)
$ git वर्णन v0.1.49-स्थानीय होस्ट-AG-1-g273cf91
या (जैसा कि मार्क ने सुझाव दिया है, पूर्णता के लिए यहां सूचीबद्ध किया गया है):
$ git शो -ऑनलाइन -s EX0 अभिविन्यास के आधार पर c0235b7 ऑटोरोटेट अपलोड की गई छवियाँ
यदि आप जानकारी का एक सरल टुकड़ा निकालना चाहते हैं, तो आप विकल्प के git showसाथ इसका उपयोग कर सकते हैं --format=<string>... और यह पूछें कि आपको इसके साथ अंतर नहीं देना है --no-patch। इसका मतलब है कि आप जो भी चाहते हैं उसका प्रिंटफ-स्टाइल आउटपुट प्राप्त कर सकते हैं, जो अक्सर एक ही क्षेत्र हो सकता है।
उदाहरण के लिए, केवल छोटा हैश पाने के लिए ( %h) जो आप कह सकते हैं:
$ git show --format="%h" --no-patch
4b703eb
यदि आप उसे बचाने के लिए बैश में एक पर्यावरण चर में (लोगों के लिए एक संभावित चीज) चाहते हैं तो आप $()सिंटैक्स का उपयोग कर सकते हैं :
$ GIT_COMMIT="$(git show --format="%h" --no-patch)"
$ echo $GIT_COMMIT
4b703eb
आप क्या कर सकते हैंgit show --help की पूरी सूची में है । लेकिन यहाँ गुणों की संक्षिप्त सूची है जो उपयोगी हो सकती है:
%H हैश करना%h संक्षिप्त प्रतिबद्ध हैश%T पेड़ हैश%t संक्षिप्त वृक्ष हैश%P माता-पिता की राख%p संक्षिप्त जनक hashes%an लेखक का नाम%ae लेखक का ईमेल%at लेखक की तारीख, UNIX टाइमस्टैम्प%aI लेखक की तारीख, सख्त आईएसओ 8601 प्रारूप%cn कमिट नाम%ce कमिट ईमेल%ct कमिट डेट, UNIX टाइमस्टैम्प%cI कमिट डेट, सख्त आईएसओ 8601 प्रारूप%s विषय%f एक फ़ाइल नाम के लिए उपयुक्त, विषय पंक्तिबद्ध%gD reflog चयनकर्ता, उदा, refs / stash @ {1}%gd छोटा किया गया चयनकर्ता, उदाहरण के लिए, स्टेश @ {1}show लिए कुछ भी नहीं है ।
git log -p -S <search>काम करता है।