/ / गिट - यह क्या है? शुरुआती के लिए गिट: एक विवरण

Git क्या है? शुरुआती के लिए गिट: एक विवरण

विकास से जुड़े कई लोगसॉफ्टवेयर, Git के बारे में सुना है। ये तीन अक्षर क्या हैं? भविष्य में इस संस्करण नियंत्रण प्रणाली का प्रभावी ढंग से उपयोग करने के लिए विवरण, साथ ही संचालन के सिद्धांतों को समझना बहुत महत्वपूर्ण है, जिसमें अन्य समान प्रणालियों के विपरीत, इसके साथ काम करने वाली सूचना की पूरी तरह से अलग अवधारणाएं हैं, एक समान यूजर इंटरफेस के बावजूद। तो गिट क्या है?

विवरण

गिट क्या है

Git के लिए एक वितरित प्रणाली हैविकसित की जा रही फ़ाइलों का संस्करण नियंत्रण। इसे 2005 में Linux OS के लेखक ने बनाया था। यह प्रणाली साइट के साथ काम को सिंक्रनाइज़ करती है, साथ ही फाइलों में परिवर्तनों को सहेजती और अद्यतन करती है। यह एक बहुत ही सुविधाजनक तरीका है जब आपके पास किसी प्रोजेक्ट पर कई डेवलपर काम कर रहे हों। आज, कई प्रसिद्ध परियोजनाएं Git का उपयोग करती हैं। यह प्रयोग क्या देता है? उदाहरण के लिए, एंड्रॉइड ऑपरेटिंग सिस्टम के विकास में बड़ी संख्या में प्रोग्रामर शामिल हैं। यह बेहद असुविधाजनक होगा यदि उनमें से एक ने परिवर्तन किया, और दूसरे को इसके बारे में पता नहीं था। दूसरी ओर, गिट, सभी को सभी परिवर्तनों के बारे में जागरूक होने की अनुमति देता है, और त्रुटियों के मामले में, फ़ाइलों के पिछले संस्करणों पर वापस आ जाता है।

पैच के बजाय कास्ट का उपयोग करना

गिट क्या है

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

यह अन्य प्रणालियों से एक बहुत ही महत्वपूर्ण अंतर है।नियंत्रण जो गिट में निहित है। अंतर क्या है? Git एक छोटे फाइल सिस्टम की तरह होता जा रहा है जिसमें बहुत शक्तिशाली उपकरण होते हैं जो इसके ऊपर चलते हैं।

मुख्य रूप से स्थानीय संचालन

git windows

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

स्थानीय कार्य का अर्थ यह भी है कि आप कर सकते हैंऑफलाइन क्या करें। उदाहरण के लिए, एक डेवलपर वाहन में परिवर्तन कर सकता है। कई नियंत्रण प्रणालियों में, यह संभव नहीं है।

डेटा अखंडता की निगरानी

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

डेटा सबसे अधिक बार जोड़ा जाता है

गिट डिलीट

लगभग सभी क्रियाएं Git add actions में की जाती हैंडेटाबेस को। इन्हें हटाना बहुत मुश्किल होता है। आप केवल वही जानकारी खो सकते हैं जिसे अभी तक सहेजा नहीं गया है, लेकिन जब इसे रिकॉर्ड किया जाता है, तो हानि को बाहर रखा जाता है। इस कारण से, बहुत से लोग Git को चुनते हैं, क्योंकि यहां आप कुछ अपूरणीय करने के जोखिम के बिना प्रयोग कर सकते हैं।

फ़ाइल की स्थिति

नौसिखियों के लिए गिट के साथ काम करने का मतलब है कि यह याद रखना कि एक फाइल तीन राज्यों में से एक में हो सकती है:

  • प्रतिबद्ध, यानी फ़ाइल को स्थानीय संग्रहण में सहेजा गया है।
  • संपादन किए जाने पर संशोधित किया गया लेकिन अभी तक सहेजा नहीं गया है।
  • तैयार - संशोधित फ़ाइलें जिन्हें सहेजने के लिए चिह्नित किया गया है।

उदाहरण के लिए, गिट का उपयोग करने वाली परियोजनाओं में विभिन्न फ़ाइल राज्यों के लिए तीन खंड होते हैं:

  • गिट निर्देशिका जहां मेटाडेटा और साथ ही ऑब्जेक्ट डेटाबेस संग्रहीत किया जाता है। सिस्टम का यह हिस्सा सबसे महत्वपूर्ण है।
  • वर्किंग डायरेक्टरी, जो डेटाबेस से प्रोजेक्ट के संस्करण की चेक आउट कॉपी है।
  • एक फ़ाइल जिसमें बाद की बचत के बारे में जानकारी होती है।

गिट स्थापित करना

प्रारंभिक गिट सेटअप

संस्करण नियंत्रण प्रणाली का उपयोग करने के लिए सबसे पहले इसे स्थापित करना है। इसे करने बहुत सारे तरीके हैं। दो मुख्य विकल्प हैं:

  • स्रोत से गिट स्थापित करना।
  • अपने मंच के लिए पैकेज स्थापित करना।

स्रोत से गिट स्थापित करना

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

स्थापित करने के लिए, आपको आवश्यक पुस्तकालयों की आवश्यकता होगी: एक्सपैट, कर्ल, लिबिकॉनव, ओपनएसएल, ज़्लिब। उन्हें स्थापित करने के बाद, आप नवीनतम संस्करण नियंत्रण प्रणाली डाउनलोड कर सकते हैं, इसे संकलित कर सकते हैं और इसे स्थापित कर सकते हैं।

विंडोज ऑपरेटिंग सिस्टम पर इंस्टालेशन

यदि उपयोगकर्ता के पास Linux नहीं है, लेकिन चाहता हैgit का उपयोग करें, Windows भी इस प्रणाली का समर्थन करता है। और इसे स्थापित करना बहुत आसान है। एक msysGit प्रोजेक्ट है, जिसकी स्थापना प्रक्रिया सबसे सरल में से एक है। आपको बस इंस्टॉलर फ़ाइल डाउनलोड करने की आवश्यकता है, जो प्रोजेक्ट के गिटहब पेज पर पाई जा सकती है, और फिर इसे चलाएं। स्थापना के अंत में, कंप्यूटर पर दो संस्करण होंगे - ग्राफिकल और कंसोल।

पहली बार Git सेट करना

डमी के लिए गिट

नियंत्रण प्रणाली के सेट होने के बादकंप्यूटर, आपको अपने उपयोगकर्ता के लिए परिवेश को अनुकूलित करने के लिए कुछ कदम उठाने की आवश्यकता है। यह एक बार किया जाता है। अपडेट करते समय, सभी सेटिंग्स सहेजी जाती हैं। इन्हें कभी भी बदला जा सकता है।

Git में git config नामक एक उपयोगिता शामिल है जो आपको सिस्टम के प्रदर्शन और उपस्थिति को अनुकूलित और नियंत्रित करने देती है। इन मापदंडों को तीन स्थानों पर सहेजा जा सकता है:

  • सभी उपयोगकर्ताओं और रिपॉजिटरी के लिए समान मान वाली फ़ाइल में।
  • किसी विशिष्ट उपयोगकर्ता के लिए सेटिंग्स वाली फ़ाइल में।
  • वर्तमान रिपॉजिटरी में स्थित कॉन्फ़िगरेशन फ़ाइल में। ऐसे पैरामीटर केवल उसके लिए मान्य हैं।

अनुकूल नाम

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

यदि आप –global विकल्प निर्दिष्ट करते हैं, तो इन सेटिंग्स को एक बार करने की आवश्यकता है।

टेक्स्ट एडिटर चुनना

नाम निर्दिष्ट करने के बाद, आपको संपादक का चयन करना होगा,जिसकी जरूरत Git में मैसेज टाइप करते समय होगी। डिफ़ॉल्ट रूप से, ऑपरेटिंग सिस्टम के मानक संपादक का उपयोग किया जाएगा। यदि उपयोगकर्ता किसी भिन्न का उपयोग करना चाहता है, तो आपको इसे core.editor लाइन में कॉन्फ़िगरेशन फ़ाइल की सेटिंग में पंजीकृत करना होगा।

पैरामीटर जांच

गिट की मूल बातें जानने के लिए, आपको सक्षम होना चाहिएउपयोग की गई सेटिंग्स की जाँच करें। ऐसा करने के लिए, git config -list कमांड का उपयोग करें। यह सभी उपलब्ध विकल्पों को सूचीबद्ध करता है जो इसे मिल सकता है। कुछ सेटिंग नाम सूची में कई बार दिखाई दे सकते हैं। ऐसा इसलिए है क्योंकि गिट विभिन्न फाइलों से एक कुंजी पढ़ता है। ऐसी स्थिति में, प्रत्येक कुंजी के लिए अंतिम मान का उपयोग किया जाता है। कमांड में "--सूची" के बजाय "{कुंजी}" दर्ज करके कुछ कुंजियों के मूल्यों की जांच करना संभव है।

एक रिपॉजिटरी कैसे बनाएं

इस लक्ष्य को प्राप्त करने के दो तरीके हैं। पहला सिस्टम में मौजूदा कैटलॉग या प्रोजेक्ट को आयात करना है। दूसरा सर्वर से मौजूदा रिपॉजिटरी की क्लोनिंग कर रहा है।

इस निर्देशिका में निर्माण

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

एक भंडार क्लोनिंग

मौजूदा भंडार की एक प्रति प्राप्त करने के लिएगिट क्लोन कमांड की जरूरत है। इसकी मदद से, Git को सर्वर से लगभग सभी डेटा की एक प्रति प्राप्त होगी। यह प्रत्येक फ़ाइल के सभी संस्करणों पर लागू होता है। यह एक बहुत ही सुविधाजनक सुविधा है, क्योंकि सर्वर की विफलता की स्थिति में, प्रोग्रामर किसी भी क्लाइंट पर क्लोन का उपयोग करने में सक्षम होगा ताकि सर्वर को उस स्थिति में लौटाया जा सके जिसमें वह क्लोनिंग के दौरान था। यह एक पुनर्स्थापना बिंदु की तरह दिखता है।

गिट में एक फाइल को हटाना

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

पूर्ववत परिवर्तन

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

परिणाम

शुरुआती के लिए गिट के साथ काम करना

उपयोगकर्ता के पास अब एक होना चाहिएगिट क्या है, यह संस्करण नियंत्रण प्रणाली क्या है, यह अन्य समान उत्पादों से कैसे भिन्न है, इसकी समझ। यह स्पष्ट है कि पूर्ण समीक्षा के लिए, आपको अपने लिए व्यक्तिगत सेटिंग्स के साथ Git का एक कार्यशील संस्करण स्थापित करना होगा। डमी के लिए गिट पर एक ट्यूटोरियल या वीडियो कोर्स करने में कोई दिक्कत नहीं होगी, जो सिस्टम के साथ काम करने के सभी चरणों के माध्यम से उपयोगकर्ता को कदम से कदम उठाने में सक्षम होगा।