लिनक्स में गिट रिपोजिटरी कैसे खींचे?

गिट एक संस्करण नियंत्रण प्रक्रियाओं को परिभाषित करता है कि परियोजनाओं को कैसे साझा किया जाना चाहिए। कई वेबसाइटें मौजूद हैं जो आपको अपने Git प्रोजेक्ट्स को होस्ट करने की अनुमति देती हैं। गिटहब सबसे लोकप्रिय विकल्प है, बिटबकेट एक और लोकप्रिय विकल्प है, दोनों मुफ्त खातों की अनुमति देते हैं जो असीमित सार्वजनिक या निजी भंडार बना सकते हैं। GitLab तृतीय-पक्ष होस्टिंग पर भरोसा किए बिना निजी विकास की अनुमति देने वाला एक स्व-होस्टेड विकल्प प्रदान करता है।

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

यदि आप केवल रिपॉजिटरी का एक अद्यतन संस्करण डाउनलोड करना चाहते हैं तो इस कमांड का संचालन विशेष रूप से सरल है; स्थानीय संस्करण को दूरस्थ संस्करण से मिलान करने के लिए अद्यतन किया जाएगा। हालाँकि, आप देख सकते हैं कि यदि आपने अपने स्थानीय संस्करण में संशोधन किए हैं तो समस्याएँ हो सकती हैं।

कमांड "गिट पुल" वास्तव में दो अलग-अलग कमांड "गिट फ़ेच" और "गिट मर्ज फ़ेच हेड" चलाता है। उप-कमांड "गिट फ़ेच" विशेष रूप से ऑनलाइन भंडार से नवीनतम संस्करण को खींचती है और अस्थायी रूप से इसे संग्रहीत करती है। उप-कमांड "गिट मर्ज फ़ेच हेड" फिर आपके स्थानीय परिवर्तनों को डाउनलोड किए गए संस्करण के साथ मर्ज कर देता है, जिसमें नए कमिट को प्राथमिकता दी जाती है।

टिप: एक "गिट कमिट" एक बदलाव का सबमिशन है, यह संभव है कि कई स्थानीय और रिमोट कमिट हों जो समान या अलग-अलग काम करते हों। जब तक परिवर्तनों को धक्का नहीं दिया जाता है, तब तक स्थानीय संस्करण दूरस्थ संस्करण के लिए दृश्यमान नहीं होते हैं। प्रत्येक प्रतिबद्ध विवरण वास्तव में क्या परिवर्तन किए गए थे और एक टाइमस्टैम्प शामिल करें।

स्थानीय और दूरस्थ संस्करणों के बीच संघर्ष

आदर्श रूप से मर्ज परिदृश्य में, कोई विरोध नहीं होगा और मर्ज की प्रक्रिया अपने आप पूरी हो जाएगी। विलय विशेष रूप से आसान हो सकता है यदि कुछ परिवर्तन किए गए थे, या यदि आपके स्थानीय परिवर्तन किसी दूरस्थ परिवर्तन में हस्तक्षेप नहीं करते हैं। यदि, हालांकि, कोड के एक ही हिस्से में परस्पर विरोधी जटिल परिवर्तन हैं, तो Git एक मर्ज त्रुटि को फेंक देगा।

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

कमांड "गिट मर्जटूल" इस तरह से एक ग्राफिकल टूल खोलेगा जो आपको मैन्युअल रूप से संघर्षों को हल करने में मदद करेगा।