यदि आप एक लिनक्स उपयोगकर्ता हैं, तो आप शायद किसी बिंदु पर गिट में आ सकते हैं, शायद एक नया प्रोग्राम डाउनलोड करने का प्रयास करते समय या सीवीएस या सबवर्जन जैसे संस्करण नियंत्रण प्रणालियों को देखते हुए। मौजूदा समाधानों के साथ संतुष्टि की कमी के कारण, गिट लिनक्स कर्नेल के प्रसिद्ध लिनुस टोरवाल्ड्स द्वारा बनाई गई संशोधन नियंत्रण प्रणाली है। डिजाइन में मुख्य जोर गति, या अधिक विशेष रूप से दक्षता पर था। Git पिछले सिस्टम की कई कमियों को दूर करता है और यह सब बहुत कम समय में करता है। यदि आप Git सीखना चाहते हैं, तो यह शुरुआती मार्गदर्शिका आपको आरंभ करने में मदद करेगी।
गिट क्या करता है
मान लीजिए कि आप एक ग्राहक के लिए एक वेबसाइट बनाने पर काम कर रहे हैं। वे कहते हैं कि वे क्या चाहते हैं, आप इसे डिजाइन करते हैं, वे इसकी समीक्षा करते हैं और संशोधन करते हैं, आदि। ग्राहक से संशोधन के प्रत्येक सेट के साथ, साइट बदलती है और बढ़ती है। बाद में, ग्राहक कह सकता है, "मुझे यह पिछले सितंबर की तरह बेहतर लगता है।" सामान्य परिस्थितियों में आपको परेशानी होती है। हो सकता है कि आपके पास उस समय की सभी फ़ाइलें और डेटा न हों, और आपका कोड इतना बदल गया हो कि वापस लौटना मुश्किल या असंभव होगा।
एक संशोधन नियंत्रण प्रणाली का उद्देश्य उपरोक्त पैराग्राफ में लगभग सभी समस्याओं को हल करना है। आप अपने कोड और फ़ाइलों में प्रत्येक परिवर्तन को ट्रैक कर सकते हैं और किसी भी बिंदु पर वापस उस स्थान पर वापस जा सकते हैं जहां चीजें थीं।
Git कैसे काम करता है
प्रत्येक प्रोजेक्ट की डायरेक्टरी का अपना Git रिपॉजिटरी होता है। आप उस प्रोजेक्ट के लिए अपनी सभी फाइलें उस डायरेक्टरी में रखते हैं और समय-समय पर गिट को फाइलों की वर्तमान स्थिति के साथ इसकी जानकारी अपडेट करने के लिए कहते हैं। राज्य को रिकॉर्ड करने के लिए Git को बताने की प्रक्रिया एक commit
है . हर बार जब आप प्रतिबद्ध होते हैं (जो अक्सर होना चाहिए), गिट उन सभी फाइलों पर एक नज़र डालता है जिन्हें ट्रैक करने का निर्देश दिया गया है और उन फाइलों में अंतर (सभी नई फाइलें नहीं) ".git" निर्देशिका में सहेजता है। प्रत्येक प्रतिबद्धता आपके प्रोजेक्ट के विकास के लिए एक नया बचत बिंदु बन जाती है।
वैकल्पिक रूप से, आप अपने स्थानीय गिट भंडार को बाहरी होस्ट, जैसे गिटहब या अपने स्वयं के गिट सर्वर पर धक्का दे सकते हैं। यह एक परियोजना पर कई योगदानकर्ताओं को अपने स्थानीय रेपो में लगातार, तेजी से कमिट करने में सक्षम बनाता है, फिर उन सभी स्थानीय कमिट्स को ऑनलाइन रिपॉजिटरी में एक ही अपडेट में बंडल करता है।
यह उन चीजों में से एक है जो कुछ अन्य संस्करण नियंत्रण प्रणालियों (वीसीएस) की तुलना में गिट को तेजी से उपयोग करने के लिए बनाता है:आप समय बर्बाद किए बिना और बैंडविड्थ को हर एक के लिए सर्वर पर अपलोड किए बिना अपने स्थानीय भंडार में अक्सर प्रतिबद्ध कर सकते हैं।
गिट प्राप्त करना
अधिकांश लिनक्स डिस्ट्रो जीआईटी प्रीइंस्टॉल्ड के साथ आते हैं। यदि आपका सिस्टम इसके साथ नहीं आता है, तो आप इसे अपने सॉफ़्टवेयर सेंटर या पैकेज मैनेजर से आसानी से स्थापित कर सकते हैं, क्योंकि यह अधिकांश रिपॉजिटरी में आसानी से उपलब्ध है।
आप इसे टर्मिनल में स्थापित कर सकते हैं:
# डेबियन/उबंटूसुडो एपीटी इंस्टॉल गिट-ऑल # फेडोरासुडो डीएनएफ इंस्टाल गिट-ऑल
यदि आप किसी अन्य प्लेटफॉर्म पर हैं या अन्यथा ऐसे रिपॉजिटरी का उपयोग नहीं कर सकते हैं, तो आप यहां पैकेज डाउनलोड और मैन्युअल रूप से इंस्टॉल कर सकते हैं।
Git का उपयोग करना
स्थानीय गिट भंडार बनाने की प्रक्रिया त्वरित और आसान है। सबसे पहले, एक निर्देशिका बनाएं जिसे आप अपने प्रोजेक्ट के लिए उपयोग करना चाहते हैं और उस स्थान पर अपना टर्मिनल खोलें।
cd /my-git-directory
कमांड के साथ Git रेपो शुरू करें:
गिट इनिट
यह आपकी रिपॉजिटरी जानकारी रखने के लिए एक ".git" निर्देशिका (दृश्य से छिपी) बनाएगा। संभवतः, आप कुछ फ़ाइलें जोड़ना प्रारंभ करना चाहेंगे. हम एक साधारण README फ़ाइल बनाकर शुरू करेंगे, इसे देखने के लिए रिपॉजिटरी की फाइलों की सूची में जोड़कर, फिर अपनी फाइल को रिपॉजिटरी में भेजेंगे।
#नई फ़ाइल में कुछ टेक्स्ट डालें "TODO:क्रिएट डॉक्यूमेंटेशन"> README.txt #अब Git को इस फ़ाइल के परिवर्तनों पर नज़र रखने के लिए कहें#इसे प्रति फ़ाइल केवल एक बार करने की आवश्यकता है (अधिक#उस पर एक पल में )git add README.txt #और अब स्टेट को Git रिपॉजिटरी में सेव करें, कमिट README.txt करें
आपको एक टेक्स्ट एडिटर स्क्रीन पर लाया जाएगा (बिल्कुल कौन सा टेक्स्ट एडिटर आपके डिस्ट्रो और कॉन्फ़िगरेशन पर निर्भर करता है) जहां आपको इस कमिट के बारे में कोई भी नोट दर्ज करना चाहिए। ये आम तौर पर अंतिम प्रतिबद्धता के बाद हुए परिवर्तनों के संक्षिप्त सारांश होते हैं। एक बार जब आप टेक्स्ट एडिटर को सेव कर लेते हैं और बाहर निकल जाते हैं, तो कमिटमेंट सफलतापूर्वक पूरा हो जाना चाहिए।
यदि उपरोक्त के दौरान, Git यह कहते हुए एक त्रुटि फेंकता है कि यह आपको नहीं पहचान सकता है, तो आपको यह बताना होगा कि आप कौन हैं। ऐसा करना प्रवेश करने जितना आसान है:
git config --global user.name "Your_Username"git config --global user.email "[email protected]"
हमने अनिवार्य रूप से उस फ़ाइल की वर्तमान स्थिति का एक स्नैपशॉट बनाया है। आगे कोई भी परिवर्तन (जो आप प्रतिबद्ध करते हैं) उसके ऊपर सहेजा जाएगा।
प्रत्येक फ़ाइल को अलग-अलग जोड़ना और करना, जैसा कि ऊपर दिए गए उदाहरण में है, थकाऊ हो सकता है। इसका समाधान करने के लिए, आप इसके बजाय वर्तमान निर्देशिका में सभी फ़ाइलों को
. के साथ जोड़ सकते हैं# अनुगामी "।" git add .. पर ध्यान दें
आप सभी ज्ञात परिवर्तित फ़ाइलें एक साथ
. के साथ प्रतिबद्ध कर सकते हैंगिट कमिट-ए
कुछ अन्य आसान git कमांड विकल्पों में शामिल हैं:
#मौजूदा रिपॉजिटरी का एक पूरा क्लोन बनाएं, जैसे कि किसी सॉफ्टवेयर प्रोजेक्टगिट क्लोन की वेबसाइट से (यूआरएल, यानी git://github.com/github/linux-2.6.git) # किसी फाइल को मूव/नाम बदलें। यह आपको फ़ाइल को हटाने और फिर से जोड़ने से बचाता है #अगर इसे बैशगिट एमवी (स्रोत) (गंतव्य) द्वारा स्थानांतरित किया गया था गिट ट्रीगिट शाखा की एक नई शाखा (नई शाखा का नाम, यानी "प्रयोगात्मक") # एक शाखा से दूसरी शाखा में स्विच करें गिट चेकआउट (शाखा का नाम, यानी "प्रयोगात्मक") # शाखा (शाखा) को वर्तमान ट्रीगिट मर्ज (शाखा) में मर्ज करें। पूर्व>बेशक, यह सिर्फ शुरुआत है कि गिट क्या कर सकता है। एक बार जब आप जीआईटी में महारत हासिल कर लेते हैं, तो आप जीथब के साथ शुरुआत कर सकते हैं और सीख सकते हैं कि अपने पुल अनुरोधों में स्क्रीनशॉट और एनीमेशन कैसे जोड़ें।