2013-02-25 17 views
8

मैं गिट का उपयोग करने के लिए अपेक्षाकृत नया हूं।गिट: "अस्थायी" एकीकरण शाखा बनाएं

हाल ही में मास्टर से हमने + -10 फीचर शाखाएं ब्रांच की हैं। आइए उन्हें ए, बी, सी, आदि को कॉल करें

मैं इन सबको परीक्षण के लिए एक साथ जोड़ना चाहता हूं। क्या यह ठीक है अगर मैं एक नई शाखा बनाता हूं, और अपनी सुविधाओं में विलय करता हूं?

जैसे

[master] git checkout -b integration 

[integration] git merge A 

[integration] git merge B 

[integration] etc 

एक बार सभी सुविधाओं परीक्षण किया गया है और मंजूरी दे दी, यह तो मास्टर में integration मर्ज करने के लिए, और है सुविधा शाखा इतिहास मास्टर लॉग

जैसे में बनाए रखा सुरक्षित है

[integration] git checkout master 
[master] git merge integration 
[master] git branch -d integration 

धन्यवाद

उत्तर

8

संक्षिप्त उत्तर: हाँ।

लांग जवाब: हाँ और, कोई बदलाव नहीं मानते हुए इस दौरान आपके गुरु शाखा में किया जाता है, गुरु अपने मर्ज एक "तेजी से आगे" [master] git merge integration के बाद तो विलय हो जाएगा, मास्टर शाखा एकीकरण शाखा से पहले की तरह दिखाई देगा विलय

"शाखा इतिहास" मास्टर शाखा में दिखाई देगा। आईएमएचओ आपके इतिहास को "शाखा इतिहास" के रूप में नहीं बल्कि "कोड इतिहास" के रूप में सोचना सर्वोत्तम नहीं है।

आप इस तथ्य परिवर्तन मर्ज से आया है रिकॉर्ड करने के लिए चाहते हैं, git merge --no-ff का उपयोग मजबूर करने के लिए किसी मर्ज के निर्माण के लिए प्रतिबद्ध हैं, भले ही तेजी से आगे के लिए प्रतिबद्ध है (जो इतिहास रैखिक रहता है जब संभव हो) काम करेगा।

भी देखें गहराई से जवाब के लिए Correct Git workflow for shared feature branch?

+0

धन्यवाद – kabal

3

ज़रूर, कि च है ऑफ़लाइन।

डिफ़ॉल्ट रूप से (जब तक कि आप विलय करने के लिए स्क्वैश नहीं करते), आप प्रत्येक सुविधा का पूरा इतिहास और उनके एकीकरण का इतिहास बनाए रखेंगे, भले ही अस्थायी शाखा समाप्त हो जाए।