2010-11-15 9 views
6

में लिंक संदेश "foo" के साथ एक प्रतिबद्ध को देखते हुए, मैं git cherry-pick -x the_commit है। नतीजा संदेश Git -x चेरी लेने: केवल एक सारांश भाग के साथ अर्थात विवरण में के बजाय सारांश

foo
(cherry picked from commit eb42a6475d2c2e4fff7a1b626ce6e27eec21e886)
के साथ एक नई प्रतिबद्धता है, अब यह अच्छा नहीं है, क्योंकि यह दो-पंक्ति सारांश है, जो कि गिट में एक बग जैसा लगता है।

लेकिन मैं टिप्पणी को संपादित किए बिना टिप्पणी को नीचे कैसे दिख सकता हूं?

foo

(cherry picked from commit eb42a6475d2c2e4fff7a1b626ce6e27eec21e886)

उत्तर

7

आप सही हैं कि यह एक निरीक्षण की तरह लगता है। आप git mailing list पर एक ईमेल भेज सकते हैं और देख सकते हैं कि वे क्या सोचते हैं! अभी के लिए, आपको इसे स्वयं संभालना होगा, यद्यपि।

इससे निपटने का अच्छा तरीका यह पूरी तरह से टालना होगा: मूल प्रतिबद्ध संदेश को अच्छा बनाएं। यदि यह पहले से ही बहु-रेखा है, वहां खाली रेखा के साथ, चेरी-पिक से जुड़ी रेखा प्रारूप को खराब नहीं करेगी।

इसके आसपास काम करने के लिए, चेरी-उठाए गए प्रतिबद्धता में एक-पंक्ति संदेश है, जैसा कि आप कहते हैं, आप चेरी-पिक के लिए -e विकल्प का उपयोग कर सकते हैं। यदि आप विम का उपयोग कर रहे हैं, तो सबसे खराब स्थिति आपको इसकी देखभाल करने के लिए ggo<Esc>ZZ पर हिट करना होगा।

या आप एक तैयार-प्रतिबद्ध-संदेश हुक लिख सकते हैं। आपको इसकी आवश्यकता होनी चाहिए:

#!/bin/bash 
sed -i '2s/^(cherry picked/\n&' "$1" 
+0

मैं मूल समितियों (यानी अन्य लोगों) को अपने संदेशों को इस तरह प्रारूपित नहीं कर सकता। मैन्युअल रूप से संदेश को संपादित करने के लिए, 'git प्रतिबद्ध -x -e' एक बेहतर समाधान की तरह लगता है। – StellarVortex

+0

मेरी पिछली टिप्पणी में, मेरा मतलब था 'गिट चेरी-पिक-एक्स-ई'। (अब और संपादित नहीं कर सकते हैं।) – StellarVortex

+0

@स्टेलर: ओह, दुह, आप सही हैं। मैं भूल गया कि चेरी-पिक उस विकल्प में था। खुशी है कि आपको मेलिंग सूची से प्रतिक्रिया मिली है, यद्यपि! – Cascabel

संबंधित मुद्दे