Git Clone कमांड क्या है?
git clone कमांड आपके स्थानीय कंप्यूटर पर एक वर्किंग डायरेक्टरी में मौजूदा रिपॉजिटरी की एक कॉपी बनाता है।
क्लोनिंग Git की एक केंद्रीय विशेषता है। ऐसा इसलिए है क्योंकि क्लोनिंग आपको मेन वर्जन से स्वतंत्र अपने कोड की एक कॉपी बनाने की अनुमति देती है। आप इस कॉपी को अपने स्थानीय मशीन पर चला सकते हैं और अपने कोड में हेरफेर कर सकते हैं बिना अपने प्रोजेक्ट के मेन वर्जन में कोड को प्रभावित किए।
इसका मतलब है कि आपको रिपॉजिटरी में परिवर्तन तब तक नहीं करने पड़ते जब तक आप ऐसा करने के लिए तैयार नहीं होते। आपके द्वारा कोई भी परिवर्तन करने के बाद, आप कोड को रिमोट रिपॉजिटरी में पुश करके स्टोर कर सकते हैं। या, आप एक पुल रिक्वेस्ट बना सकते हैं ताकि अन्य लोग आपके द्वारा लिखे गए कोड की समीक्षा कर सकें।
Git का उपयोग करके रिपॉजिटरी सेट अप करने के दो तरीके हैं। आप git clone कमांड का उपयोग करके मौजूदा रिपॉजिटरी को क्लोन कर सकते हैं, या आप git init कमांड का उपयोग करके एक नई रिपॉजिटरी बना सकते हैं।
रिपॉजिटरी को क्लोन करना आमतौर पर एक बार की कार्रवाई होती है। आपके द्वारा रिपॉजिटरी को क्लोन करने के बाद, आपके पास Git रिपॉजिटरी के साथ काम करने के लिए अपनी स्थानीय मशीन पर आवश्यक सभी कोड होंगे।
git clone कमांड रिपॉजिटरी से जुड़े सभी मेटाडेटा को क्लोन करता है। एक बार जब आप रिपॉजिटरी को क्लोन कर लेते हैं, तो आपके पास प्रोजेक्ट के पूरे इतिहास का रिकॉर्ड होगा। क्लोन कमांड प्रोजेक्ट से जुड़ी सभी Git ब्रांच को भी क्लोन करता है।
Git Clone का उपयोग कैसे करें
git clone कमांड आपके स्थानीय मशीन पर एक नई डायरेक्टरी में मौजूदा रिपॉजिटरी का क्लोन बनाता है। जब आप अपनी स्थानीय मशीन पर रिपॉजिटरी को क्लोन करते हैं, तो एक नया एनवायरनमेंट बनाया जाएगा जहां रिपॉजिटरी के लिए कोड स्टोर किया जाएगा।
आइए एक उदाहरण के माध्यम से देखें कि रिपॉजिटरी को क्लोन करने के लिए git clone कमांड का उपयोग कैसे करें। मान लीजिए हम GitHub से अपनी स्थानीय मशीन पर रिपॉजिटरी क्लोन करना चाहते हैं।
हम अपने प्रोजेक्ट को क्लोन करने के लिए निम्नलिखित कमांड लाइन ऑपरेशन का उपयोग कर सकते हैं:
git clone https://github.com/username/project-name.git cd project-name
हमारे कोड में, पहला कमांड हमारे द्वारा निर्दिष्ट GitHub URL पर स्टोर की गई रिपॉजिटरी के आधार पर एक नया Git रिपॉजिटरी बनाता है। जिस फ़ोल्डर में हमारा कोड दिखाई देता है उसका नाम रिपॉजिटरी के नाम के बराबर होता है। इस मामले में, Git project-name नामक एक फ़ोल्डर बनाता है।
फिर, हम अपने नए Git रिपॉजिटरी में जाने के लिए cd कमांड का उपयोग करते हैं। अब हम अपने नए रिपॉजिटरी को देख रहे हैं, हम अपनी फ़ाइलों को देखना और संपादित करना शुरू कर सकते हैं।
कस्टम क्लोन ऑपरेशन
git clone कमांड कुछ पैरामीटर्स स्वीकार करता है। आप इन पैरामीटर्स का उपयोग कस्टम क्लोन ऑपरेशन करने के लिए कर सकते हैं। आइए उन मुख्य कस्टम ऑपरेशन का पता लगाएं जिन्हें आप git clone के साथ काम करते समय जानना चाह सकते हैं।
किसी फ़ोल्डर में क्लोन करें
डिफ़ॉल्ट रूप से, एक फ़ोल्डर उस रिपॉजिटरी के समान नाम से बनाया जाता है जिसे हमने क्लोन किया था। हमारे पहले उदाहरण में, हमने फ़ोल्डर नाम निर्दिष्ट किए बिना रिपॉजिटरी को क्लोन किया। हमारे रिपॉजिटरी की परिणामी कॉपी को ck-git कहा जाता था। ऐसा इसलिए है क्योंकि हमने फ़ोल्डर नाम नहीं बताया था।
हालांकि, जब आप रिपॉजिटरी क्लोन कर रहे होते हैं, तो आप इसे किसी विशिष्ट फ़ोल्डर में क्लोन करना चाह सकते हैं। आप Git रिपॉजिटरी को क्लोन करने के लिए एक डायरेक्टरी नाम निर्दिष्ट करके ऐसा कर सकते हैं।
हम git clone कमांड को दूसरे आर्गुमेंट के साथ इस तरह चला सकते हैं:
git clone <repo> <folder>
मान लीजिए हम एक काल्पनिक Git रिपॉजिटरी की सामग्री को "my-project" नामक फ़ोल्डर में क्लोन करना चाहते हैं। हम निम्नलिखित कोड का उपयोग करके ऐसा कर सकते हैं:
git clone https://github.com/username/project-name.git my-project cd my-project
सबसे पहले, हमारा कोड हमारे द्वारा संदर्भित GitHub रिपॉजिटरी को क्लोन करता है। हमारे उदाहरण में, हम एक फ़ोल्डर नाम निर्दिष्ट करते हैं, "my-project", जहां हमारे रिपॉजिटरी का कोड क्लोन किया जाएगा। फिर, हम git clone कमांड द्वारा बनाए गए my-project फ़ोल्डर में जाने के लिए cd का उपयोग करते हैं।
शैलो क्लोन बनाएं
डिफ़ॉल्ट रूप से, जब आप रिपॉजिटरी क्लोन करते हैं, तो रिपॉजिटरी का इतिहास भी क्लोन किया जाएगा। यदि आपके प्रोजेक्ट में सैकड़ों कमिट हैं, तो स्थानीय क्लोन बनाने में अधिक समय लगेगा।
पूरे रिपॉजिटरी को क्लोन करने को छोड़ने के लिए, आप शैलो क्लोन बना सकते हैं। शैलो क्लोन केवल "depth" पैरामीटर द्वारा निर्दिष्ट कमिट के इतिहास को क्लोन करते हैं जिसका उपयोग शैलो क्लोन बनाने के लिए किया जाता है।
शैलो क्लोन बनाने के लिए सिंटैक्स इस प्रकार है:
git clone --depth=1 <repo>
"depth" पैरामीटर का मान उन ऐतिहासिक कमिट की संख्या को संदर्भित करता है जिन्हें आप क्लोन करना चाहते हैं। इस मामले में, हमने "depth" पैरामीटर के मान के रूप में 1 निर्दिष्ट किया है। इसका मतलब है कि क्लोन कमांड केवल सबसे हालिया कमिट को हमारी स्थानीय मशीन पर कॉपी करेगा।
मान लीजिए हमारे काल्पनिक GitHub रिपॉजिटरी में 10,000 कमिट थे, जिसका मतलब है कि इसे हमारी स्थानीय मशीन पर पूरी तरह से कॉपी करने में काफी समय लगेगा। हम केवल वर्तमान कोड और इसके अंतिम 10 कमिट की एक कॉपी क्लोन करना चाहते हैं, बिना पूरे रिपॉजिटरी के इतिहास को भी क्लोन किए। हम निम्नलिखित कोड का उपयोग करके ऐसा कर सकते हैं:
git clone --depth=10 https://github.com/username/project-name.git
उपरोक्त कमांड ने हमारे प्रोजेक्ट की वर्तमान स्थिति में एक कॉपी बनाई है। हम रिपॉजिटरी के इतिहास में 10 कमिट पीछे खोज सकते हैं। हालांकि, हमारे प्रोजेक्ट में रिपॉजिटरी के इतिहास में और पीछे के कमिट पर डेटा नहीं है।
git clone कमांड पर उन्नत कॉन्फिगरेशन विकल्पों के बारे में अधिक जानने के लिए आधिकारिक Git दस्तावेज़ पढ़ें।
Git URLs
कई अलग-अलग URL प्रकार हैं जो git clone कमांड द्वारा समर्थित हैं। git clone कमांड का उपयोग आमतौर पर रिमोट रिपॉजिटरी को क्लोन करने के लिए किया जाता है, और इसलिए हम नीचे Git द्वारा समर्थित मुख्य URL प्रकारों का पता लगाएंगे।
Git
Git प्रोटोकॉल का उपयोग Git वर्जन कंट्रोल सिस्टम का उपयोग करके रिपॉजिटरी को क्लोन करने के लिए किया जाता है। Git प्रोटोकॉल प्रमाणीकरण के किसी भी तरीके का उपयोग नहीं करता है। यहां एक उदाहरण URL है जो Git वर्जन कंट्रोल सिस्टम का उपयोग करता है:
git://host.com/repo/path.git
URL "git:" से शुरू होता है, जो Git क्लाइंट को git प्रोटोकॉल का उपयोग करके रिपॉजिटरी को क्लोन करने के लिए कहता है।
SSH
सिक्योर शेल, या SSH, आपको नेटवर्क सर्वर को दूरस्थ रूप से एक्सेस करने देता है। SSH प्रमाणीकरण प्रदान करता है, और इसलिए SSH URL अक्सर सुरक्षित Git रिपॉजिटरी के लिए उपयोग किए जाते हैं। यहां एक उदाहरण Git URL है जो SSH प्रोटोकॉल का उपयोग करता है:
ssh://user@host.com/repo/path.git
इस उदाहरण में, "user" उस उपयोगकर्ता के नाम को संदर्भित करता है जो किसी विशेष रिपॉजिटरी तक पहुंचने का प्रयास कर रहा है। हम रिपॉजिटरी को क्लोन करने से पहले SSH पर साइन इन करना होगा।
HTTP
हाइपरटेक्स्ट ट्रांसफर प्रोटोकॉल, या HTTP, इंटरनेट पर वेब पेज डेटा ट्रांसफर करने के लिए उपयोग किया जाता है। HTTP URL आमतौर पर Git रिपॉजिटरी के लिए भी उपयोग किए जाते हैं। यहां एक उदाहरण Git URL है जो HTTP का उपयोग करता है:
https://host.com/repo/path.git
इस उदाहरण में, हमारा रिपॉजिटरी HTTPS प्रोटोकॉल का उपयोग करता है। "git" या "ssh" का उपयोग करने के बजाय, हम अपने Git रिपॉजिटरी URL की शुरुआत में "https" निर्दिष्ट करते हैं।
निष्कर्ष
git clone कमांड का उपयोग Git रिपॉजिटरी की स्थानीय कॉपी बनाने के लिए किया जाता है। क्लोनिंग आपको अपने प्रोजेक्ट के मुख्य संस्करण को प्रभावित किए बिना संपादित करने के लिए एक रिपॉजिटरी की स्वतंत्र कॉपी बनाने देता है।
जब आप अपने परिवर्तनों को प्रोजेक्ट के मुख्य संस्करण में सहेजने के लिए तैयार होते हैं, तो आप एक कमिट बना सकते हैं।
इस ट्यूटोरियल ने उदाहरणों के साथ पता लगाया कि git clone कमांड का उपयोग कैसे करें। अब आपके पास पेशेवर प्रोग्रामर की तरह git clone का उपयोग करके रिपॉजिटरी क्लोन करने का ज्ञान है!