Git एक मुफ़्त और ओपन सोर्स टूल है जो मुख्य रूप से एक वितरित वर्शन कंट्रोल सिस्टम है। Git एक वर्शन कंट्रोल सॉफ्टवेयर है जो किसी चीज़ के विभिन्न संस्करणों को नियंत्रित करने में मदद करता है। इसमें सोर्स कोड का संस्करण भी शामिल हो सकता है। Subversion, Bazaar आदि जैसे कई वर्शन कंट्रोल सॉफ्टवेयर हैं। हालांकि, Git कोड के अलग-अलग संस्करणों को ट्रैक करने के लिए सबसे लोकप्रिय और सबसे अधिक इस्तेमाल किया जाने वाला सॉफ्टवेयर है।
वर्शन कंट्रोल सिस्टम का उपयोग करने का मुख्य कारण यह है कि यह आपको प्रोजेक्ट के अलग-अलग और विस्तृत संस्करणों को ट्रैक करने देता है। यह टीम के साथ "सहयोग" बनाए रखने में भी मदद करता है। जब लोग एक ही प्रोजेक्ट पर काम कर रहे हों और कोई सामान्य समस्या हो, तब यह एक समस्या समाधानकर्ता बन जाता है — यहीं वर्शन कंट्रोल सिस्टम काम आता है। यह यह जानने में मदद करेगा कि "परिवर्तन किसने किया", "किसी ने वह परिवर्तन क्यों किया", "कब किया", आदि।
Python के लिए कई IDE उपलब्ध हैं, और आप अपने प्रोजेक्ट में Git को इंटीग्रेट भी कर सकते हैं। IDE चुनते समय, आप यह ट्यूटोरियल देख सकते हैं, Top 5 Python IDEs for Data Science। पूर्ण सेटअप के लिए, Datacamp पर एक संक्षिप्त ट्यूटोरियल भी है Top 5 IDES।
Windows में Git डाउनलोड करने के लिए:
- आप Git की वेबसाइट पर जा सकते हैं Git Download
- Windows संस्करण के अनुसार सॉफ्टवेयर डाउनलोड करें।
- आप सभी डिफ़ॉल्ट और अनुशंसित विकल्पों का चयन करके Git इंस्टॉल कर सकते हैं।
उपरोक्त सभी कार्य करने के बाद, आप कमांड लाइन पर git चला सकते हैं। इसके बाद यह विभिन्न जानकारी दिखाएगा जिसमें उपयोग-निर्देश और अलग-अलग स्थितियों में इस्तेमाल होने वाले सामान्य Git कमांड शामिल हैं।
Git में अलग-अलग कॉन्फ़िगरेशन स्तर होते हैं। कॉन्फ़िगरेशन तीन स्तरों पर हो सकता है। ये हैं:
- System
- Global
- Repository
यह समझने की बात है कि ऊपर बताए गए तीन स्तरों के बीच प्राथमिकता का क्रम होता है। सबसे उच्च स्तर System है। Global दूसरा उच्च स्तर है और Repository तीनों में सबसे निचला स्तर है। साथ ही, पैरामीटर कई स्तरों पर सेट किए जा सकते हैं, और यदि वही पैरामीटर, जैसे user.email, Repository स्तर पर सेट है तो यह Global स्तर पर निर्दिष्ट मान को ओवरराइड कर देगा। यदि वही पैरामीटर Global स्तर पर सेट है, तो यह System स्तर पर निर्दिष्ट मान को छिपा देगा।
Git में config नामक कमांड होता है जो पैरामीटर स्वीकार कर सकता है और यह यह तर्क भी स्वीकार कर सकता है कि किस कॉन्फ़िगरेशन स्तर पर सेटिंग लागू करनी है।
-
System स्तर (--system) सिस्टम-स्तर पूरे उपयोगकर्ता, पूरी मशीन और सभी रेपो को कवर करता है। Windows पर, कॉन्फ़िग फ़ाइल C:\Documents\Git\etc\gitconfig में रहेगी। इस स्तर पर संपादन करने पर बदलाव हर जगह, यानी हर रेपो स्तर पर प्रभाव डाल सकते हैं। इसलिए, सिस्टम में कॉन्फ़िगरेशन स्तर को एडिट करना अक्सर हतोत्साहित किया जाता है।
-
Global स्तर (--global) Global स्तर का कॉन्फ़िगरेशन वह है जहाँ इस स्तर पर किया गया संपादन उपयोगकर्ता स्तर पर प्रभाव डालता है। विशेष रूप से, उपयोगकर्ता नाम उस व्यक्ति पर लागू होता है जो ऑपरेटिंग सिस्टम का उपयोगकर्ता है। Windows पर यह C:\Users\<UserName>\.gitconfig में संग्रहीत होता है।
-
Repository स्तर (--local)
Repository स्तर वह स्तर है जो रेपो के लिए विशिष्ट होता है। उदाहरण के लिए, यदि आपने GitHub से कोई प्रोजेक्ट क्लोन किया है तो डिफ़ॉल्ट रूप से, जब कोई कॉन्फ़िगरेशन पास नहीं किया जाता, git config लोकल स्तर पर लिखेगा। साथ ही, एक कॉन्फ़िग फ़ाइल होती है जिसे .git रेपो सबफ़ोल्डर कहा जाता है। Windows में, यह C:\<RepoFolder>\.git\config में स्थित होता है।
मूलभूत कॉन्फ़िगरेशन
आप नीचे दिखाए गए सभी चरणों को कमांड लाइन में कॉन्फ़िगर कर सकते हैं और बेहतर अनुभव प्राप्त कर सकते हैं।
आप Git का संस्करण सुनिश्चित कर सकते हैं
git --version
आप अपने नाम के साथ Git सेट कर सकते हैं
git config --global user.name "<Your-Full-Name>"
आप अपने ईमेल के साथ Git सेट कर सकते हैं
git config --global user.email "<your-email-address>"
आप सुनिश्चित कर सकते हैं कि Git आउटपुट रंगीन हो
git config --global color.ui auto
आप किसी कॉन्फ्लिक्ट में मूल स्थिति दिखा सकते हैं
git config --global merge.conflictstyle diff3
आप वर्तमान कॉन्फ़िगरेशन देख सकते हैं
git config --list
अधिक जानकारी के लिए, आप यह साइट देख सकते हैं: Git Configuration।
कोड एडिटर के साथ Git
आप अपनी पसंद के एडिटर्स (IDE) के साथ Git का उपयोग कर सकते हैं। कई लोकप्रिय कोड एडिटर उपलब्ध हैं। आप अपनी पसंद के अनुसार अलग-अलग एडिटर का उपयोग कर सकते हैं और ऐसा करने के लिए आप गूगल पर खोज कर सकते हैं कि यह कैसे किया जाए।
Sublime Text सेटअप:
git config --global core.editor "'C:/Program Files/Sublime Text 2/sublime_text.exe' -n -w"
VSCode सेटअप:
git config --global core.editor "code --wait"
Atom Editor सेटअप:
git config --global core.editor "atom --wait"
Mac/Linux सेटअप में Git डाउनलोड करने के लिए:
- आप Git की वेबसाइट पर जा सकते हैं Git Download
- Mac/Linux संस्करण के अनुसार सॉफ्टवेयर डाउनलोड करें।
- आप सभी डिफ़ॉल्ट और अनुशंसित विकल्पों का चयन करके Git इंस्टॉल कर सकते हैं।
उपरोक्त सभी कार्य करने के बाद, आप टर्मिनल पर git चला सकते हैं। इसके बाद यह विभिन्न जानकारी दिखाएगा जिसमें उपयोग-निर्देश और अलग-अलग स्थितियों में इस्तेमाल होने वाले सामान्य Git कमांड शामिल हैं।
Git में अलग-अलग कॉन्फ़िगरेशन स्तर होते हैं। कॉन्फ़िगरेशन तीन स्तरों पर हो सकता है। ये हैं:
- System
- Global
- Repository
यह समझने की बात है कि ऊपर बताए गए तीन स्तरों के बीच प्राथमिकता का क्रम होता है। सबसे उच्च स्तर System है और Global दूसरा उच्च स्तर है तथा Repository तीनों में सबसे निचला स्तर है। साथ ही, पैरामीटर कई स्तरों पर सेट किए जा सकते हैं, और यदि वही पैरामीटर, जैसे user.email, Repository स्तर पर सेट है तो यह Global स्तर पर निर्दिष्ट मान को ओवरराइड कर देगा, और यदि वही पैरामीटर Global स्तर पर सेट है, तो यह System स्तर पर निर्दिष्ट मान को छिपा देगा।
Git में config नामक कमांड होता है जो पैरामीटर स्वीकार कर सकता है और यह यह तर्क भी स्वीकार कर सकता है कि किस कॉन्फ़िगरेशन स्तर पर सेटिंग लागू करनी है।
-
System स्तर (--system) सिस्टम-स्तर पूरे उपयोगकर्ता, पूरी मशीन और सभी रेपो को कवर करता है। Linux पर, कॉन्फ़िग फ़ाइल /etc/gitconfig में रहेगी। macOS में, एक फ़ाइल होती है /usr/local/git/etc/gitconfig। इस स्तर पर संपादन करने पर बदलाव हर जगह, यानी हर रेपो स्तर पर प्रभाव डाल सकते हैं। इसलिए, सिस्टम में कॉन्फ़िगरेशन स्तर को एडिट करना अक्सर हतोत्साहित किया जाता है। साथ ही, इसमें प्रशासनिक विशेषाधिकार की आवश्यकता होती है, जो macOS और Linux दोनों में root होता है।
-
Global स्तर (--global) Global स्तर का कॉन्फ़िगरेशन वह है जहाँ इस स्तर पर किया गया संपादन उपयोगकर्ता स्तर पर प्रभाव डालता है। विशेष रूप से, उपयोगकर्ता नाम उस व्यक्ति पर लागू होता है जो ऑपरेटिंग सिस्टम का उपयोगकर्ता है। Linux और macOS दोनों पर यह ~/.gitconfig में संग्रहीत होता है।
-
Repository स्तर (--local)
Repository स्तर वह स्तर है जो रेपो के लिए विशिष्ट होता है। उदाहरण के लिए, यदि आपने GitHub से कोई प्रोजेक्ट क्लोन किया है तो डिफ़ॉल्ट रूप से, जब कोई कॉन्फ़िगरेशन पास नहीं किया जाता, git config लोकल स्तर पर लिखेगा। साथ ही, एक कॉन्फ़िग फ़ाइल होती है जिसे .git रेपो सबफ़ोल्डर कहा जाता है। Linux और macOS दोनों पर यह ~/<MyRepoFolder>/.git/config में संग्रहीत होता है।
मूलभूत कॉन्फ़िगरेशन
बेहतर अनुभव के लिए आप नीचे दिखाए गए सभी चरणों को टर्मिनल में कॉन्फ़िगर कर सकते हैं।
आप अपने नाम के साथ Git सेट कर सकते हैं
git config --global user.name "<Your-Full-Name>"
आप अपने ईमेल के साथ Git सेट कर सकते हैं
git config --global user.email "<your-email-address>"
आप सुनिश्चित कर सकते हैं कि Git आउटपुट रंगीन हो
git config --global color.ui auto
आप किसी कॉन्फ्लिक्ट में मूल स्थिति दिखा सकते हैं
git config --global merge.conflictstyle diff3
आप वर्तमान कॉन्फ़िगरेशन प्रकार देख सकते हैं
git config --list
कोड एडिटर के साथ Git
Sublime Text सेटअप
git config --global core.editor "'/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl' -n -w"
VSCode सेटअप
git config --global core.editor "code --wait"
Atom Editor सेटअप
git config --global core.editor "atom --wait"
निष्कर्ष
इस ट्यूटोरियल में, आपने विभिन्न ऑपरेटिंग सिस्टम में Git की इंस्टॉलेशन के चरण सीखे। आपने अपने पसंदीदा IDE के साथ सेटअप के लिए आवश्यक मूलभूत कॉन्फ़िगरेशन के बारे में भी सीखा, और Git में अलग-अलग कॉन्फ़िगरेशन स्तरों के बारे में जानकारी प्राप्त की।
Git सीखने के लिए कई संसाधन उपलब्ध हैं:
1. Getting Git Right
2. Git Basics
यदि आप Git के बारे में और सीखना चाहते हैं, तो DataCamp का Introduction to Git For Data Science कोर्स करें।
Git एक मुफ़्त और ओपन सोर्स टूल है जो मुख्य रूप से एक वितरित वर्शन कंट्रोल सिस्टम है। Git एक वर्शन कंट्रोल सॉफ्टवेयर है जो किसी चीज़ के विभिन्न संस्करणों को नियंत्रित करने में मदद करता है। इसमें सोर्स कोड का संस्करण भी शामिल हो सकता है। Subversion, Bazaar आदि जैसे कई वर्शन कंट्रोल सॉफ्टवेयर हैं। हालांकि, Git कोड के अलग-अलग संस्करणों को ट्रैक करने के लिए सबसे लोकप्रिय और सबसे अधिक इस्तेमाल किया जाने वाला सॉफ्टवेयर है।
वर्शन कंट्रोल सिस्टम का उपयोग करने का मुख्य कारण यह है कि यह आपको प्रोजेक्ट के अलग-अलग और विस्तृत संस्करणों को ट्रैक करने देता है। यह टीम के साथ "सहयोग" बनाए रखने में भी मदद करता है। जब लोग एक ही प्रोजेक्ट पर काम कर रहे हों और कोई सामान्य समस्या हो, तब यह एक समस्या समाधानकर्ता बन जाता है — यहीं वर्शन कंट्रोल सिस्टम काम आता है। यह यह जानने में मदद करेगा कि "परिवर्तन किसने किया", "किसी ने वह परिवर्तन क्यों किया", "कब किया", आदि।
Python के लिए कई IDE उपलब्ध हैं, और आप अपने प्रोजेक्ट में Git को इंटीग्रेट भी कर सकते हैं। IDE चुनते समय, आप यह ट्यूटोरियल देख सकते हैं, Top 5 Python IDEs for Data Science। पूर्ण सेटअप के लिए, Datacamp पर एक संक्षिप्त ट्यूटोरियल भी है Top 5 IDES।
Windows में Git डाउनलोड करने के लिए:
उपरोक्त सभी कार्य करने के बाद, आप कमांड लाइन पर
gitचला सकते हैं। इसके बाद यह विभिन्न जानकारी दिखाएगा जिसमें उपयोग-निर्देश और अलग-अलग स्थितियों में इस्तेमाल होने वाले सामान्य Git कमांड शामिल हैं।Git में अलग-अलग कॉन्फ़िगरेशन स्तर होते हैं। कॉन्फ़िगरेशन तीन स्तरों पर हो सकता है। ये हैं:
यह समझने की बात है कि ऊपर बताए गए तीन स्तरों के बीच प्राथमिकता का क्रम होता है। सबसे उच्च स्तर System है। Global दूसरा उच्च स्तर है और Repository तीनों में सबसे निचला स्तर है। साथ ही, पैरामीटर कई स्तरों पर सेट किए जा सकते हैं, और यदि वही पैरामीटर, जैसे user.email, Repository स्तर पर सेट है तो यह Global स्तर पर निर्दिष्ट मान को ओवरराइड कर देगा। यदि वही पैरामीटर Global स्तर पर सेट है, तो यह System स्तर पर निर्दिष्ट मान को छिपा देगा।
Git में
configनामक कमांड होता है जो पैरामीटर स्वीकार कर सकता है और यह यह तर्क भी स्वीकार कर सकता है कि किस कॉन्फ़िगरेशन स्तर पर सेटिंग लागू करनी है।System स्तर (--system) सिस्टम-स्तर पूरे उपयोगकर्ता, पूरी मशीन और सभी रेपो को कवर करता है। Windows पर, कॉन्फ़िग फ़ाइल
C:\Documents\Git\etc\gitconfigमें रहेगी। इस स्तर पर संपादन करने पर बदलाव हर जगह, यानी हर रेपो स्तर पर प्रभाव डाल सकते हैं। इसलिए, सिस्टम में कॉन्फ़िगरेशन स्तर को एडिट करना अक्सर हतोत्साहित किया जाता है।Global स्तर (--global) Global स्तर का कॉन्फ़िगरेशन वह है जहाँ इस स्तर पर किया गया संपादन उपयोगकर्ता स्तर पर प्रभाव डालता है। विशेष रूप से, उपयोगकर्ता नाम उस व्यक्ति पर लागू होता है जो ऑपरेटिंग सिस्टम का उपयोगकर्ता है। Windows पर यह
C:\Users\<UserName>\.gitconfigमें संग्रहीत होता है।Repository स्तर (--local)
Repository स्तर वह स्तर है जो रेपो के लिए विशिष्ट होता है। उदाहरण के लिए, यदि आपने GitHub से कोई प्रोजेक्ट क्लोन किया है तो डिफ़ॉल्ट रूप से, जब कोई कॉन्फ़िगरेशन पास नहीं किया जाता, git config लोकल स्तर पर लिखेगा। साथ ही, एक कॉन्फ़िग फ़ाइल होती है जिसे
.gitरेपो सबफ़ोल्डर कहा जाता है। Windows में, यहC:\<RepoFolder>\.git\configमें स्थित होता है।मूलभूत कॉन्फ़िगरेशन
आप नीचे दिखाए गए सभी चरणों को कमांड लाइन में कॉन्फ़िगर कर सकते हैं और बेहतर अनुभव प्राप्त कर सकते हैं।
आप Git का संस्करण सुनिश्चित कर सकते हैं
git --versionआप अपने नाम के साथ Git सेट कर सकते हैं
git config --global user.name "<Your-Full-Name>"आप अपने ईमेल के साथ Git सेट कर सकते हैं
git config --global user.email "<your-email-address>"आप सुनिश्चित कर सकते हैं कि Git आउटपुट रंगीन हो
git config --global color.ui autoआप किसी कॉन्फ्लिक्ट में मूल स्थिति दिखा सकते हैं
git config --global merge.conflictstyle diff3आप वर्तमान कॉन्फ़िगरेशन देख सकते हैं
git config --listअधिक जानकारी के लिए, आप यह साइट देख सकते हैं: Git Configuration।
कोड एडिटर के साथ Git
आप अपनी पसंद के एडिटर्स (IDE) के साथ Git का उपयोग कर सकते हैं। कई लोकप्रिय कोड एडिटर उपलब्ध हैं। आप अपनी पसंद के अनुसार अलग-अलग एडिटर का उपयोग कर सकते हैं और ऐसा करने के लिए आप गूगल पर खोज कर सकते हैं कि यह कैसे किया जाए।
Sublime Text सेटअप:
git config --global core.editor "'C:/Program Files/Sublime Text 2/sublime_text.exe' -n -w"VSCode सेटअप:
git config --global core.editor "code --wait"Atom Editor सेटअप:
git config --global core.editor "atom --wait"Mac/Linux सेटअप में Git डाउनलोड करने के लिए:
उपरोक्त सभी कार्य करने के बाद, आप टर्मिनल पर
gitचला सकते हैं। इसके बाद यह विभिन्न जानकारी दिखाएगा जिसमें उपयोग-निर्देश और अलग-अलग स्थितियों में इस्तेमाल होने वाले सामान्य Git कमांड शामिल हैं।Git में अलग-अलग कॉन्फ़िगरेशन स्तर होते हैं। कॉन्फ़िगरेशन तीन स्तरों पर हो सकता है। ये हैं:
यह समझने की बात है कि ऊपर बताए गए तीन स्तरों के बीच प्राथमिकता का क्रम होता है। सबसे उच्च स्तर System है और Global दूसरा उच्च स्तर है तथा Repository तीनों में सबसे निचला स्तर है। साथ ही, पैरामीटर कई स्तरों पर सेट किए जा सकते हैं, और यदि वही पैरामीटर, जैसे user.email, Repository स्तर पर सेट है तो यह Global स्तर पर निर्दिष्ट मान को ओवरराइड कर देगा, और यदि वही पैरामीटर Global स्तर पर सेट है, तो यह System स्तर पर निर्दिष्ट मान को छिपा देगा।
Git में
configनामक कमांड होता है जो पैरामीटर स्वीकार कर सकता है और यह यह तर्क भी स्वीकार कर सकता है कि किस कॉन्फ़िगरेशन स्तर पर सेटिंग लागू करनी है।System स्तर (--system) सिस्टम-स्तर पूरे उपयोगकर्ता, पूरी मशीन और सभी रेपो को कवर करता है। Linux पर, कॉन्फ़िग फ़ाइल
/etc/gitconfigमें रहेगी। macOS में, एक फ़ाइल होती है/usr/local/git/etc/gitconfig। इस स्तर पर संपादन करने पर बदलाव हर जगह, यानी हर रेपो स्तर पर प्रभाव डाल सकते हैं। इसलिए, सिस्टम में कॉन्फ़िगरेशन स्तर को एडिट करना अक्सर हतोत्साहित किया जाता है। साथ ही, इसमें प्रशासनिक विशेषाधिकार की आवश्यकता होती है, जो macOS और Linux दोनों में root होता है।Global स्तर (--global) Global स्तर का कॉन्फ़िगरेशन वह है जहाँ इस स्तर पर किया गया संपादन उपयोगकर्ता स्तर पर प्रभाव डालता है। विशेष रूप से, उपयोगकर्ता नाम उस व्यक्ति पर लागू होता है जो ऑपरेटिंग सिस्टम का उपयोगकर्ता है। Linux और macOS दोनों पर यह
~/.gitconfigमें संग्रहीत होता है।Repository स्तर (--local)
Repository स्तर वह स्तर है जो रेपो के लिए विशिष्ट होता है। उदाहरण के लिए, यदि आपने GitHub से कोई प्रोजेक्ट क्लोन किया है तो डिफ़ॉल्ट रूप से, जब कोई कॉन्फ़िगरेशन पास नहीं किया जाता, git config लोकल स्तर पर लिखेगा। साथ ही, एक कॉन्फ़िग फ़ाइल होती है जिसे
.gitरेपो सबफ़ोल्डर कहा जाता है। Linux और macOS दोनों पर यह~/<MyRepoFolder>/.git/configमें संग्रहीत होता है।मूलभूत कॉन्फ़िगरेशन
बेहतर अनुभव के लिए आप नीचे दिखाए गए सभी चरणों को टर्मिनल में कॉन्फ़िगर कर सकते हैं।
आप अपने नाम के साथ Git सेट कर सकते हैं
git config --global user.name "<Your-Full-Name>"आप अपने ईमेल के साथ Git सेट कर सकते हैं
git config --global user.email "<your-email-address>"आप सुनिश्चित कर सकते हैं कि Git आउटपुट रंगीन हो
git config --global color.ui autoआप किसी कॉन्फ्लिक्ट में मूल स्थिति दिखा सकते हैं
git config --global merge.conflictstyle diff3आप वर्तमान कॉन्फ़िगरेशन प्रकार देख सकते हैं
git config --listकोड एडिटर के साथ Git
Sublime Text सेटअप
git config --global core.editor "'/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl' -n -w"VSCode सेटअप
git config --global core.editor "code --wait"Atom Editor सेटअप
git config --global core.editor "atom --wait"निष्कर्ष
इस ट्यूटोरियल में, आपने विभिन्न ऑपरेटिंग सिस्टम में Git की इंस्टॉलेशन के चरण सीखे। आपने अपने पसंदीदा IDE के साथ सेटअप के लिए आवश्यक मूलभूत कॉन्फ़िगरेशन के बारे में भी सीखा, और Git में अलग-अलग कॉन्फ़िगरेशन स्तरों के बारे में जानकारी प्राप्त की।
Git सीखने के लिए कई संसाधन उपलब्ध हैं:
1. Getting Git Right
2. Git Basics
यदि आप Git के बारे में और सीखना चाहते हैं, तो DataCamp का Introduction to Git For Data Science कोर्स करें।