Saturday, November 13, 2021

GIT Version Control System in Hindi

इस ट्यूटोरियल में हम GIT के बारे में अध्ययन करेंगे और समझेंगे कि GIT का क्या महत्व है और किसी भी व्यक्ति को GIT का नॉलेज क्यों होना चाहिए। GIT को समझने से पहले यह जानना जरूरी है वर्जन कंट्रोल सिस्टम क्या होता है। 

किसी लिए सॉफ्टवेयर प्रोजेक्ट पर कार्य करने के लिए हमें सॉफ्टवेयर के विभिन्न डेवलपमेंट वर्जन बनाने पड़ते हैं क्योंकि सॉफ्टवेयर डेवलपमेंट एक चरणबद्ध प्रक्रिया है। सॉफ्टवेयर का सुधार हर चरण में होता है।

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

वर्जन कंट्रोल सिस्टम का विकास भी कई चरणों में हुआ है। शुरू में जब वर्जन कंट्रोल सिस्टम या सॉफ्टवेयर का निर्माण किया गया तो यह लोकल स्तर पर होता था। लोकल वर्जन कंट्रोल सिस्टम के अंतर्गत एक सॉफ्टवेयर के अलग-अलग वर्जन के फाइल्स को zip कर लोकल कंप्यूटर में स्टोर करके रखा जाता था। इसकी सहायता से कोई भी सॉफ्टवेयर डेवलपर अगर पुराने वर्जन को दोबारा से यूज करना हो तो पूराने zip फाइल को यूज करके काम कर लेता था। लोकल वर्जन कंट्रोल सिस्टम की सबसे बड़ी खामी यह थी कि अगर लोकल सिस्टम या कंप्यूटर क्रश कर जाए तो सारा डाटा नष्ट हो जाता था। इस कमी को दूर करने के लिए केंद्रीकृत वर्जन कंट्रोल सिस्टम का विकास किया।  केंद्रीकृत वर्जन कंट्रोल सिस्टम के अंतर्गत वर्जन कंट्रोल से जुड़े डेटाफाइल्स को किसी सर्वर पर रखा जाता है। मान लीजिए कि तीन डेवलपर्स किसी प्रोजेक्ट पर कार्य कर रहे हैं तो प्रत्येक डेवलपर अपने-अपने वर्जन के फाइल को सर्वर पर रखते हैं। फाइल को लोकल कंप्यूटर पर ना रखकर सर्वर पर रखा जाता है। इस सिस्टम के अंतर्गत यह दोष है कि अगर सर्वर क्रैश कर जाए तो सर्वर पर रखा वर्जन फ़ाइल भी नष्ट हो जाएगा। अतः यह सिस्टम भी पूरी तरह सुरक्षित नहीं है। केंद्रीकृत वर्जन कंट्रोल सिस्टम की खामी को ध्यान में रखते हुए डिस्ट्रीब्यूटेड वर्जन कंट्रोल सिस्टम का विकास किया गया। डिस्ट्रीब्यूटेड वर्जन कंट्रोल सिस्टम के अंतर्गत प्रत्येक लोकल कंप्यूटर पर डेवलपर अपने डेवलपमेंट कोड को कार्य करने के लिए रखते हैं और कार्य के अंत में वे अपने डेवलपमेंट कोड को सर्वर पर पोस्ट कर देते हैं और फिर जब जरूरत होती है तो वह सर्वर से कोड को अपने लोकल सिस्टम पर डाऊनलोड कर लेते हैं। यह कार्य प्रत्येक डेवलपर के द्वारा किया जाता है। कहने का अभिप्राय यह है कि प्रत्येक डेवलपर अपने updated data को सर्वर पर push करते हैं और जब कार्य करना होता है तो सर्वर से उस डाटा को pull कर लेते हैं।

वर्तमान समय में GIT डिस्ट्रीब्यूटेड वर्जन कंट्रोल सिस्टम के लिए सर्वाधिक विख्यात है। अधिकतर वेब डेवलपर GIT का ही उपयोग करते हैं। अतः किसी भी प्रोफेशनल सॉफ्टवेयर डेवलपर के लिए GIT का ज्ञान अति आवश्यक है। GIT का ज्ञान और कौशल उनके प्रोफेशनल कैरियर के विकास में खासा योगदान देता है। GIT के आधारभूत तत्त्वों को सीखना सरल है परन्तु यह ध्यातव्य है कि GIT एक जटिल सॉफ्टवेयर है जिसकी बारीकियों को सीखने में वक़्त लगता है।

No comments:

Post a Comment

Hot Topics