GitHub सॉफ्टवेयर डेवलपर्स के लिए एक वेब-आधारित वर्जन-कंट्रोल और सहयोग प्लेटफॉर्म है। Microsoft, GitHub में सबसे बड़ा एकल योगदानकर्ता, ने जून 2018 में 7.5 बिलियन डॉलर में GitHub के अधिग्रहण की शुरुआत की। GitHub, जो सॉफ्टवेयर-एज-ए-सर्विस (SaaS) बिजनेस मॉडल के माध्यम से वितरित किया जाता है, 2008 में शुरू हुआ था और Git पर स्थापित किया गया था, जो Linus Torvalds द्वारा बनाया गया एक ओपन सोर्स कोड मैनेजमेंट सिस्टम है जो सॉफ्टवेयर बिल्ड को तेज बनाता है।
Git और GitHub
Git का उपयोग किसी प्रोजेक्ट के सोर्स कोड को स्टोर करने और उस कोड में सभी परिवर्तनों के पूर्ण इतिहास को ट्रैक करने के लिए किया जाता है। यह डेवलपर्स को एक प्रोजेक्ट पर अधिक प्रभावी ढंग से सहयोग करने की अनुमति देता है क्योंकि यह कई डेवलपर्स से संभावित रूप से विरोधाभासी परिवर्तनों के प्रबंधन के लिए टूल प्रदान करता है। GitHub डेवलपर्स को अपने सार्वजनिक रिपॉजिटरी से मुफ्त में सॉफ्टवेयर को बदलने, अनुकूलित करने और सुधारने की अनुमति देता है, लेकिन निजी रिपॉजिटरी के लिए शुल्क लेता है, विभिन्न भुगतान योजनाओं की पेशकश करता है। प्रत्येक सार्वजनिक या निजी रिपॉजिटरी में एक प्रोजेक्ट की सभी फाइलें, साथ ही प्रत्येक फाइल का रिवीजन इतिहास होता है। रिपॉजिटरी में कई सहयोगी हो सकते हैं और सार्वजनिक या निजी हो सकते हैं।
सोशल कोडिंग
GitHub एक वेब इंटरफेस प्रदान करके सोशल कोडिंग की सुविधा देता है Git कोड रिपॉजिटरी और सहयोग के लिए प्रबंधन टूल्स के लिए। GitHub को सॉफ्टवेयर डेवलपर्स के लिए एक गंभीर सोशल नेटवर्किंग साइट के रूप में माना जा सकता है। सदस्य एक-दूसरे को फॉलो कर सकते हैं, एक-दूसरे के काम को रेट कर सकते हैं, विशिष्ट प्रोजेक्ट्स के लिए अपडेट प्राप्त कर सकते हैं और सार्वजनिक या निजी तौर पर संवाद कर सकते हैं।
मुख्य शब्दावली
GitHub में डेवलपर्स द्वारा उपयोग किए जाने वाले तीन महत्वपूर्ण शब्द हैं फोर्क, पुल रिक्वेस्ट और मर्ज। एक फोर्क, जिसे ब्रांच के रूप में भी जाना जाता है, बस एक रिपॉजिटरी है जिसे एक सदस्य के खाते से दूसरे सदस्य के खाते में कॉपी किया गया है। फोर्क और ब्रांच एक डेवलपर को मूल कोड को प्रभावित किए बिना संशोधन करने की अनुमति देते हैं। यदि डेवलपर संशोधनों को साझा करना चाहता है, तो वह मूल रिपॉजिटरी के मालिक को एक पुल रिक्वेस्ट भेज सकती है। यदि, संशोधनों की समीक्षा के बाद, मूल मालिक रिपॉजिटरी में संशोधनों को खींचना चाहता है, तो वह संशोधनों को स्वीकार कर सकती है और उन्हें मूल रिपॉजिटरी के साथ मर्ज कर सकती है। कमिट्स, डिफ़ॉल्ट रूप से, सभी मास्टर प्रोजेक्ट पर बनाए रखे जाते हैं और इंटरलीव्ड होते हैं, या कमिट स्क्वैशिंग के माध्यम से एक सरल मर्ज में संयुक्त किए जा सकते हैं।
प्रोग्रामर्स से परे उपयोग
क्योंकि GitHub उपयोग करने के लिए इतना सहज है और इसके वर्जन-कंट्रोल टूल्स सहयोग के लिए इतने उपयोगी हैं, नॉन-प्रोग्रामर्स ने भी दस्तावेज़-आधारित और मल्टीमीडिया प्रोजेक्ट्स पर काम करने के लिए GitHub का उपयोग करना शुरू कर दिया है। GitLab GitHub का एक ओपन सोर्स विकल्प है।
GitHub उत्पाद और विशेषताएं
GitHub प्रसिद्ध SaaS उत्पाद के अलावा एक ऑन-प्रिमाइसेस संस्करण प्रदान करता है। GitHub Enterprise एकीकृत विकास वातावरण और निरंतर एकीकरण टूल एकीकरण का समर्थन करता है, साथ ही थर्ड-पार्टी ऐप्स और सेवाओं की एक लंबी सूची। यह SaaS संस्करण की तुलना में बढ़ी हुई सुरक्षा और ऑडिटेबिलिटी प्रदान करता है।
अन्य उल्लेखनीय उत्पाद और विशेषताएं:
- GitHub Gist GitHub उपयोगकर्ताओं को कोड के टुकड़े या अन्य नोट्स साझा करने की अनुमति देता है।
- GitHub Flow नियमित रूप से अपडेट किए गए परिनियोजन के लिए एक हल्का, ब्रांच-आधारित वर्कफ़्लो है।
- GitHub Pages एक प्रोजेक्ट को होस्ट करने के लिए स्टेटिक वेबपेज हैं, जो सीधे किसी व्यक्ति या संगठन के GitHub रिपॉजिटरी से जानकारी खींचते हैं।
- GitHub Desktop उपयोगकर्ताओं को GitHub की वेबसाइट पर जाने के बजाय Windows या Mac डेस्कटॉप से GitHub तक पहुंचने में सक्षम बनाता है।
- GitHub Student Developer Pack छात्रों तक सीमित डेवलपर टूल्स की एक मुफ्त पेशकश है, जिसमें क्लाउड संसाधन, प्रोग्रामिंग टूल्स और समर्थन, और GitHub एक्सेस शामिल है।