2010-08-29 10 views
28

मुझे याद है कि एक साल के बारे में पहले के लिए मैं कुछ ऐसे मर्ज को प्रतिबद्ध संदेशों दूरदराज के भंडार पर Merge branch 'Name_of_branch' किया जा रहा में हुई थी।"से बचने के लिए कैसे मर्ज शाखा 'name_of_branch' में संदेशों के लिए प्रतिबद्ध?

मैं यह क्या याद से क्या होगा अगर मैं एक शाखा में सभी प्रतिबद्ध रिबेस और फिर गुरु विलय किया और फिर दूरदराज के भंडार को धक्का दे दिया।

लेकिन अब मैं Git-1.7.2.2 के साथ पुन: पेश नहीं कर सकते।

यह निर्धारित किया गया है ? या कोई यह समझा सकता है कि यह कैसे होता है, और शायद इससे कैसे बचें?

+11

'$ गिट विलय - केवल-नहीं - नो-प्रतिबद्ध नाम_of_branch' - अगर विलय तेजी से आगे हो और विलय हो तो विलय करता है। – hakre

उत्तर

31

यह एक डिफ़ॉल्ट विलय प्रतिबद्ध संदेश है। यह कुछ भी इसे पाने के लिए विशेष नहीं ले करता है - बस गुरु में किसी भी nontrivial मर्ज कार्य करें:

- o - o - X (master) 
    \ /
    o - o (topic) 

डिफ़ॉल्ट संदेश प्रतिबद्ध प्रतिबद्ध के लिए एक्स "शाखा 'विषय' मर्ज करें" हो जाएगा। यदि आप मास्टर के अलावा किसी अन्य शाखा में विलय करते हैं, तो डिफ़ॉल्ट संदेश "Merge branch '<merged-branch>' into '<branch>'" है।

मुझे यकीन नहीं है कि आप "फिक्सिंग" और "से बचने" के बारे में क्यों पूछ रहे हैं। यह विलय प्रतिबद्धता के लिए एक बहुत ही उचित डिफ़ॉल्ट संदेश है। यदि आप अधिक विस्तृत विलय प्रतिबद्ध संदेश चाहते हैं, तो आप निश्चित रूप से एक प्रदान करने के लिए स्वागत करते हैं। (दो प्राथमिक तरीके git merge --no-commitgit commit द्वारा पीछा किया, या git merge संदेश संपादित करने के लिए git commit --amend के बाद उपयोग करने के लिए कर रहे हैं।)

शायद आप केवल तेजी से आगे का आपस में विलय करने के लिए इस्तेमाल कर रहे हैं? (वे छोटे विलय होते हैं, जहां आप विलय कर रहे हैं, आपकी वर्तमान शाखा पूर्वजों के रूप में है, इसलिए सभी गिट को इतिहास के माध्यम से शाखा को आगे बढ़ाना है।) वे मर्ज काम नहीं करते हैं, इसलिए कोई प्रतिबद्ध संदेश नहीं है।

(वैसे, धक्का इस के साथ कोई संबंध नहीं है - सब यह होता है एक से दूसरे रेपो से जानकारी की प्रतिलिपि है यह कभी करता नहीं बनाता है।।)

+3

बहुत बढ़िया! आपका बहुत बहुत धन्यवाद! "फिक्स्ड" और "टालना" के बारे में बात करने का कारण यह है कि लिनस इस बात में कहता है कि डिफॉल्ट विलय संदेश गिट में एकमात्र डिज़ाइन दोष था, लेकिन अब इसे ठीक करने में बहुत देर हो चुकी है, क्योंकि लोगों ने इसका उपयोग किया है । Http://video.linuxfoundation.org/video/1578 पर वीडियो देखें यदि आप इसे डाउनलोड करते हैं, तो आप आगे बढ़ सकते हैं। मुझे लगता है कि यह अंत में है कि वह कहता है। शायद क्यू एंड ए में। –

+0

@ सांड्रा: आह, मैं देखता हूं कि आप कहां से आ रहे हैं। मेरे पास अब वीडियो देखने का समय नहीं है, लेकिन मुझे लगता है कि विचार यह है कि प्रतिबद्ध संदेशों में शाखा की जानकारी एम्बेड करना एक बुरा विचार है, और ऑटो-स्वीकृत डिफ़ॉल्ट प्रतिबद्ध संदेश प्रदान करना बुरा है। संदेश अभी भी एक बहुत ही उचित डिफ़ॉल्ट है, यदि आपकी शाखाएं और वर्कफ़्लो अच्छा है, तो मुझे लगता है (उदा। Git.git) - लेकिन हाँ, संपादन/संशोधन करना अक्सर एक अच्छा विचार है। – Cascabel

+0

मैं तुम्हारा बिंदु देखता हूं। एक बार फिर धन्यवाद। –

5

git merge -m

मैं उपयोग कर रहा हूँ गिट 1.7.8

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