मुझे किसी दिए गए कमिट के संदेश को प्रिंट करने के लिए प्लंबिंग कमांड की आवश्यकता है - कुछ ज्यादा नहीं, कुछ कम नहीं।
मुझे किसी दिए गए कमिट के संदेश को प्रिंट करने के लिए प्लंबिंग कमांड की आवश्यकता है - कुछ ज्यादा नहीं, कुछ कम नहीं।
जवाबों:
यह "प्लंबिंग" नहीं है, लेकिन यह वही करेगा जो आप चाहते हैं:
$ git log --format=%B -n 1 <commit>
यदि आपको पूरी तरह से एक "प्लंबिंग" कमांड की आवश्यकता है (यह सुनिश्चित नहीं है कि इसकी आवश्यकता क्यों है), तो आप उपयोग कर सकते हैं rev-list
:
$ git rev-list --format=%B --max-count=1 <commit>
हालाँकि rev-list
यह प्रतिबद्ध संदेश के अलावा कमिट श (पहली पंक्ति पर) का प्रिंट आउट भी लेगा।
%s%b
बजाय इस्तेमाल किया%B
%B
एक सही विनिर्देशक है (कम से कम, Git 1.7.2 में, सुनिश्चित नहीं है कि कब जोड़ा गया था)।
%B
1.7.1 के बाद कुछ समय में जोड़ा गया था (शायद 1.7.1.1 में)।
$ git log --format=%B -n 1 <commit> | cat -
यह आपको प्रतिबद्ध संदेश और कोई प्रतिबद्ध शा देगा, और आप इसे "पाइप" कर सकते हैं। मैं वास्तव में इसे अपने CI स्क्रिप्ट के हिस्से के रूप में उपयोग करता हूं।
git show
प्लंबिंग कमांड की तुलना में अधिक है git log
, और एक ही स्वरूपण विकल्प हैं:
git show -s --format=%B SHA1
%s
इसके बजाय का उपयोग करें %B
।
प्लंबिंग नहीं है, लेकिन मेरे पास मेरे .gitconfig में ये हैं:
lsum = log -n 1 --pretty=format:'%s'
lmsg = log -n 1 --pretty=format:'%s%n%n%b'
वह "अंतिम सारांश" और "अंतिम संदेश" है। आप उस कमिट का सारांश या संदेश प्राप्त करने के लिए एक कमिट प्रदान कर सकते हैं। (मैं 1.7.0.5 का उपयोग कर रहा हूं इसलिए% B नहीं है।)
यह आपको किसी भी निर्दिष्ट समय के लिए सभी संदेशों की एक बहुत कॉम्पैक्ट सूची देगा।
git log --since=1/11/2011 --until=28/11/2011 --no-merges --format=%B > CHANGELOG.TXT
मैंने इस्तेमाल करना शुरू कर दिया
git show-branch --no-name <hash>
से तेज लगती है
git show -s --format=%s <hash>
दोनों एक ही परिणाम देते हैं
git show -s --oneline <commit>