गिट विलय और शाखाओं को हटाने की मूल बातें

Basics Git Merging



ब्रांचिंग आपके काम को व्यवस्थित रखने में आपकी मदद कर सकती है। हालांकि, काम को सुसंगत बनाने के लिए आपको अपने काम को मर्ज करने में सक्षम होना चाहिए। यदि आप शाखाओं को कभी मर्ज और डिलीट नहीं करते हैं, तो आपका इतिहास समझने के लिए बहुत अव्यवस्थित हो सकता है।

मर्जिंग और ब्रांच डिलीट के साथ काम करना

आइए पहले एक मास्टर शाखा बनाएं, कुछ कमिट करें, एक नई शाखा बनाएं, जिसे फीचर्स कहा जाता है, कुछ कमिट्स जोड़ें, फिर मास्टर के पास वापस आएं और फिर से कमिट करें। यहाँ आदेश हैं:







$एमकेडीआईआरमेरा खेल
$सीडीमेरा खेल
$git init
$फेंक दिया 'डिजाइन निर्णय 1: मंथन' >>design.txt
$गिट ऐड -प्रति
$गिट प्रतिबद्ध -एम 'सी0: प्रोजेक्ट शुरू किया'
$फेंक दिया 'डिजाइन निर्णय 2: कोड लिखें' >>design.txt
$गिट ऐड -प्रति
$गिट प्रतिबद्ध -एम 'C1: सबमिट किया गया कोड'
$गिट शाखाविशेषताएं
$गिट चेकआउटविशेषताएं
$फेंक दिया 'फ़ीचर 1 जोड़ें' >>फीचर.txt
$गिट ऐड -प्रति
$गिट प्रतिबद्ध -एम 'सी2: फ़ीचर 1'
$फेंक दिया 'फीचर 2 जोड़ें' >>फीचर.txt
$गिट ऐड -प्रति
$गिट प्रतिबद्ध -एम 'सी3: फ़ीचर 2'
$गिट चेकआउटगुरुजी
$फेंक दिया 'मास्टर को फिर से संशोधित करना' >>design.txt
$गिट ऐड -प्रति
$गिट प्रतिबद्ध -एम 'सी4: मास्टर संशोधित'

उपरोक्त आदेशों ने निम्नलिखित स्थिति बनाई:





आप दो शाखाओं के इतिहास की जांच करके देख सकते हैं कि उनके पास क्या है:





$गिट स्थिति
शाखा मास्टर पर
प्रतिबद्ध करने के लिए कुछ नहीं, कार्यशील निर्देशिका साफ
$गिट लॉग --एक पंक्ति
2031b83 C4: मास्टर संशोधित
1c0b64c C1: सबमिट किया गया कोड

$गिट चेकआउटविशेषताएं
शाखा में स्विच किया गया'विशेषताएं'

$गिट लॉग --एक पंक्ति
93d220b C3: फ़ीचर2
ad6ddb9 C2: फ़ीचर1
1c0b64c C1: सबमिट किया गया कोड
ec0fb48 C0: प्रोजेक्ट शुरू किया

अब मान लीजिए, आप फीचर ब्रांच से लेकर हमारी मास्टर ब्रांच में सभी बदलाव लाना चाहते हैं। आपको मर्ज के गंतव्य से प्रक्रिया शुरू करनी होगी। चूंकि हम मास्टर शाखा में विलय करना चाहते हैं, इसलिए आपको वहां से प्रक्रिया शुरू करनी होगी। तो आइए मास्टर शाखा की जाँच करें:

$गिट चेकआउटगुरुजी
शाखा में स्विच किया गया'गुरुजी'

$गिट स्थिति
शाखा मास्टर पर
प्रतिबद्ध करने के लिए कुछ नहीं, कार्यशील निर्देशिका साफ

अब मर्ज बनाते हैं:



$गिट मर्जविशेषताएं

यदि मर्ज में कोई विरोध नहीं है, तो आपको टिप्पणियों के साथ एक टेक्स्ट एडिटर ओपन होगा:

शाखा मर्ज करें'विशेषताएं'

# कृपया यह बताने के लिए एक प्रतिबद्ध संदेश दर्ज करें कि यह विलय क्यों आवश्यक है,
# विशेष रूप से यदि यह एक अद्यतन अपस्ट्रीम को एक विषय शाखा में मर्ज करता है।
#
# '#' से शुरू होने वाली पंक्तियों पर ध्यान नहीं दिया जाएगा, और एक खाली संदेश निरस्त हो जाएगा
#कमिट।

आप टिप्पणियों को संशोधित कर सकते हैं या डिफ़ॉल्ट को स्वीकार कर सकते हैं। मर्ज आउटपुट को इस तरह के परिणाम दिखाना चाहिए:

द्वारा बनाया गया विलय'पुनरावर्ती'रणनीति।
फीचर.txt| 2++
1 फ़ाइलबदला हुआ,2निवेशन(+)
मोड बनाएं100644फीचर.txt

मर्ज के बाद, आपके पास निम्न शर्त है:

यदि आप लॉग की जाँच करते हैं, तो आप पाएंगे:

$गिट स्थिति
शाखा मास्टर पर
प्रतिबद्ध करने के लिए कुछ नहीं, कार्यशील निर्देशिका साफ

$गिट लॉग --एक पंक्ति
46539a3 C5: शाखा मर्ज करें'विशेषताएं'
2031b83 C4: मास्टर संशोधित
93d220b C3: फ़ीचर2
ad6ddb9 C2: फ़ीचर1
1c0b64c C1: सबमिट किया गया कोड
ec0fb48 C0: प्रोजेक्ट शुरू किया

आपने परिवर्तनों को सफलतापूर्वक मर्ज कर दिया है। हालाँकि, फीचर शाखा अभी भी मौजूद है।

$गिट शाखा -प्रति
विशेषताएं
*गुरुजी

आप इसे निम्न आदेश से हटा सकते हैं:

$गिट शाखा -डीविशेषताएं

यदि आप अभी जाँच करते हैं, तो आपको केवल मास्टर शाखा देखनी चाहिए:

$गिट शाखा -प्रति
*गुरुजी

निष्कर्ष

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

आगे की पढाई: