स्टोरी
गिटको संक्षिप्त इतिहास: विवाद, नवप्रवर्तन र विश्वव्यापी मानकसम्मको यात्रा
काठमाडौं । प्रविधिको इतिहासमा केही यस्ता उपकरण छन्, जसको जन्म नै एउटा आवश्यकताबाट मात्र होइन, असन्तोष, बहस र दबाबको बीचबाट हुन्छ । गिट पनि त्यस्तै एउटा कथा हो; एक यस्तो उपकरण, जसले सुरुमा लिनक्स कर्नेल विकासलाई सहज बनाउन जन्म लियो, तर पछि सम्पूर्ण सफ्टवेयर विकासको कार्यशैली नै बदलिदियो ।
आज गिट विश्वकै सबैभन्दा धेरै प्रयोग हुने संस्करण नियन्त्रण प्रणाली (भर्जन कन्ट्रोल सिस्टम) बनेको छ । तर यो स्थानसम्म पुग्नुअघि यसको यात्रामा धेरै चरण, धेरै प्रयोग र धेरै विवाद थिए । गिट बुझ्नुअघि, यसको जन्म गराउने वातावरण बुझ्नु आवश्यक छ ।
गिटभन्दा अघिको संसार: कोड व्यवस्थापनको संघर्ष
लिनस कर्नेलको प्रारम्भिक वर्षहरूमा, अर्थात् सन् १९९१ देखि २००२ सम्म, विकासकर्ताहरूले परिवर्तनहरू व्यवस्थापन गर्न कुनै आधुनिक, पूर्ण संस्करण नियन्त्रण प्रणाली प्रयोग गर्दैनथे । त्यतिबेला परिवर्तनहरू प्याचका रूपमा पठाइन्थ्यो, कहिले युजनेटमा, कहिले मेलिङ लिस्टमा । पछि ती प्याचहरू लिनस टोरभाल्ड्सले आफ्नै सोर्स ट्रीमा लागू गर्थे ।
नयाँ रिलिज आउँदा सम्पूर्ण ट्री फेरि सार्वजनिक हुन्थ्यो । त्यसो हुँदा कुनै एक फिचर वा बग फिक्सको इतिहास छुट्टै रूपमा हेर्ने सुविधा थिएन; केवल दुई पूर्ण रिलिजबीचको ठूलो भिन्नता मात्र उपलब्ध हुन्थ्यो । त्यो बेला खुला स्रोत संस्करण नियन्त्रण प्रणालीहरू थिएनन् भन्ने होइन । थिए, तर तिनका आफ्नै सीमा थिए ।
सन् १९७० को दशकमा आएको एससीसीएस युनिक्सका लागि प्रारम्भिक संस्करण ट्र्याकिङ उपकरणमध्ये एक थियो । त्यसपछि सन् १९८० को दशकमा आरसीएस आयो, जसले ब्रान्च र मर्जको अवधारणा ल्यायो, तर त्यो केवल अलग-अलग फाइल स्तरमा सीमित थियो । सन् १९८० को उत्तरार्धमा सिभिएस लोकप्रिय बन्यो, जसले केन्द्रीय भण्डारमा प्याच पठाउने र परिवर्तनहरूको इतिहास हेर्ने सुविधा दियो । तर त्यसमा परिवर्तनहरू फाइल-फाइलको हिसाबले मात्र ट्र्याक हुन्थ्यो, ठूलो प्याचलाई एउटै तार्किक परिवर्तनका रूपमा बुझिँदैनथ्यो, र केही गम्भीर त्रुटिहरू पनि थिए ।
पछि सन् २००० तिर सबभर्सन (एसभीएन) आयो, जसले सीभिएसभन्दा बढी स्थिरता र विश्वसनीयता दियो । तर त्यो पनि केन्द्रीकृत मोडेलमै आधारित थियो । ठूलो, वितरित र छिटो विकास हुने परियोजनाहरूका लागि त्यो पर्याप्त थिएन । लिनक्स कर्नेलजस्तो विशाल परियोजनालाई अझै पनि एउटा साँच्चिकै आधुनिक, वितरित र तेज प्रणालीको खाँचो थियो ।

बिटकिपरको प्रवेश: सुविधा र विवाद
सन् २००२ मा लिनक्स कर्नेल परियोजनाले बिटकिपर प्रयोग गर्न थाल्यो । यो ल्यारी म्याकभोइको बिटमूभर कम्पनीद्वारा विकसित एक स्वामित्वयुक्त डिभीसीएस थियो । लिनस टोरभाल्ड्सले किन यसलाई रोजे ? किनभने त्यसबेला उपलब्ध विकल्पहरूमध्ये बिटकिपरले कर्नेल विकासको आवश्यकतालाई तुलनात्मक रूपमा राम्रोसँग सम्बोधन गरिरहेको थियो ।
बिटकिपरको सबैभन्दा ठूलो विशेषता यसको वितरित संरचना थियो । यसले पूरै भण्डारलाई सजिलै फोर्क र मर्ज गर्न सक्थ्यो । यो त्यतिबेला क्रान्तिकारी विचार थियो । यसको अर्थ, लिनक्स कर्नेलका फरक-फरक भागमा काम गर्ने विकासकर्ताहरूले एउटै केन्द्रीय प्रणालीमा निर्भर नभई स्वतन्त्र रूपमा सहकार्य गर्न सक्थे, अनि तयार भएपछि परिवर्तनहरू मुख्य ट्रीमा मिलाउन सक्थे । आर्किटेक्चर, ड्राइभर र सबसिस्टमहरू एकैचोटि धेरै समूहले छुट्टाछुट्टै विकास गरेर पछि जोड्न सकिने भए । तर यो सुविधा सँगै विवाद पनि आयो ।
बिटकिपरको निःशुल्क प्रयोग सर्तसहित थियो । लिनक्स विकासकर्ताहरूलाई प्रतिस्पर्धी संस्करण नियन्त्रण परियोजनाहरूमा काम गर्न नपाइने, र केही मेटाडेटामाथि बिटमूभरकै नियन्त्रण रहनेजस्ता प्रतिबन्धहरू थिए । यसले स्वतन्त्र सफ्टवेयर समुदायमा असन्तोष बढायो । लिनस स्वयंले भने सधैँ एउटै तर्क दोहोर्याइरहे- उनी कुनै पनि उपकरणलाई यसको इजाजतपत्रका आधारमा होइन, प्राविधिक गुणका आधारमा हेर्छन् । उनका लागि राम्रो स्वामित्वयुक्त उपकरण पनि स्वीकार्य थियो, यदि त्यो साँच्चिकै राम्रो थियो भने ।
तर धेरै कर्नेल विकासकर्ताहरू यससँग सहमत थिएनन् । उनीहरूका लागि यो केवल उपकरणको विषय थिएन; यो स्वतन्त्र सफ्टवेयर आन्दोलनको सिद्धान्तसँग जोडिएको प्रश्न थियो । तनाव बढ्यो, बहस चर्कियो, तर लिनक्स कर्नेल समुदाय फुटेन । अलान कक्स, अल भिरो, डेभिड मिलर, एन्ड्रिया आर्कान्जेली, एन्ड्र्यू मोर्टनजस्ता नामहरूले प्रतिस्पर्धी परियोजना सुरु गर्न सक्ने हैसियत राख्थे, तर अन्ततः कसैले त्यसो गरेनन् ।

किन बिटकिपर महत्वपूर्ण थियो ?
आज धेरैलाई सामान्य लाग्ने कुरा, ब्रान्च बनाउने, फोर्क गर्ने, मर्ज गर्ने; त्यतिबेला निकै गाह्रो र समयखपत गर्ने काम थियो । सीभिएस र एसभीएनमा यी कामहरू भारी र जटिल मानिन्थे । बिटकिपरले यसलाई सजिलो बनायो । यही कारणले यसले विकासकर्ताहरूलाई सिकायो कि वितरित संस्करण नियन्त्रण केवल सम्भव मात्र होइन, अत्यन्त उपयोगी पनि हुन सक्छ । यही सिकाइ पछि गिटको आधार बन्यो ।
विकल्प खोज्ने प्रयास र असफलता
बिटकिपरले ल्याएको मोडेल देखेपछि धेरैले लिनस टोरभाल्ड्सका लागि खुला स्रोत विकल्प बनाउने प्रयास गरे । आर्क , डार्क्स र मोनोटोन जस्ता वितरित संस्करण नियन्त्रण प्रणालीहरू त्यसै प्रयासका उपज थिए । तर कुनै पनि प्रणालीले लिनसको आवश्यकतालाई पूर्ण रूपमा सम्बोधन गर्न सकेन ।
यसको एउटा कारण थियो, लिनस टोरभाल्ड्सले आफूलाई चाहिएको कुरा विस्तारमा स्पष्ट रूपमा परिभाषित गरेका थिएनन् । अर्कोतर्फ, उनी प्राविधिक उत्कृष्टता नभएसम्म कुनै पनि विकल्प स्वीकार्ने मनस्थितिमा थिएनन् । त्यसैले तीन वर्षको प्रयासपछि पनि ती सबै खुला स्रोत विकल्पहरू बिटकिपरभन्दा खासै नजिक पुग्न सकेनन् ।
निर्णायक मोड: २००५ को संकट
सन् २००५ मा एउटा महत्वपूर्ण घटना भयो । साम्बाका निर्माता र आरसिङ्कका सह-निर्माता एन्ड्र्यू ट्रिजेलले बिटकिपरको नेटवर्किङ प्रोटोकललाई रिभर्स-इन्जिनियर गरेर स्वतन्त्र सफ्टवेयर विकल्प बनाउने प्रयास गरे । ल्यारी म्याकभोइले यस्तो प्रयास सह्य नभएको बताए र बिटकिपरको निःशुल्क प्रयोग तुरुन्तै बन्द गरिदिए ।
यसको अर्थ थियो, लिनक्स कर्नेलको विकास अचानक जोखिममा पर्यो । जुन उपकरणको आधारमा विकास प्रक्रियाले आफूलाई स्थिर बनाएको थियो, त्यो नै एकाएक उपलब्ध भएन । अब प्रश्न उठ्यो: अब के गर्ने ?
के लिनस पुरानै तरिकामा फर्किने ? के कुनै खुला स्रोत विकल्प रोजिने ? वा उनी आफैं नयाँ प्रणाली बनाउने ?
गिटको जन्म
यहीँबाट गिटको कथा सुरु हुन्छ । सन् २००५ को अप्रिलमा लिनस टोरभाल्ड्सले गिट विकास गरे । उनका मुख्य लक्ष्यहरू स्पष्ट थिए; गति, सरल डिजाइन, पूर्ण वितरित संरचना, बलियो शाखा र मर्ज समर्थन, र लिनक्स कर्नेलजस्तो विशाल परियोजना सम्हाल्न सक्ने क्षमता ।
उनको प्राथमिक चासो गति थियो । हजारौं विकासकर्ताहरूबाट निरन्तर प्याच आउने प्रक्रियामा प्रणालीले केही सेकेन्डमै ठूला र जटिल कार्यहरू सम्पन्न गर्नुपर्ने थियो । त्यसबेलाका कुनै पनि उपलब्ध उपकरणले त्यो स्तरको प्रदर्शन दिन सकेका थिएनन् । त्यसैले लिनसले आफैं कोड लेखे ।
अचम्मको कुरा के भयो भने, गिटले अत्यन्त छिटो गति समात्यो । सुरु भएको केही दिनमै यो सेल्फ-होस्टिङ भयो । केही हप्तामै लिनक्स कर्नेल विकास सम्हाल्न योग्य बन्यो । केही महिनामै पूर्ण कार्य क्षमतामा पुग्यो । त्यसपछि परियोजनाको नेतृत्व जुनियो सी. हामानोलाई सुम्पियो, जसले गिटलाई स्थिर, परिपक्व र प्रयोगमैत्री बनाउन ठूलो भूमिका खेले ।

गिट किन फरक थियो ?
गिट अन्य संस्करण नियन्त्रण प्रणालीजस्तो देखिँदैनथ्यो । वास्तवमा, सुरुमा यसले फाइल सिस्टम-स्तरका कार्यहरूको समूहजस्तो व्यवहार गर्थ्यो । धेरै प्रणालीले प्याच स्टोर गर्थे, तर गिटले परिवर्तन भएका फाइलहरूको पूर्ण संस्करण राख्थ्यो । कागजमा यो असामान्य लाग्थ्यो, तर व्यवहारमा यो निकै शक्तिशाली थियो ।
यसले फोर्क र मर्जलाई अविश्वसनीय गतिमा सम्भव बनायो । परिवर्तनहरू मागअनुसार छिटो निकाल्न सकिने भए । पछि जुनियोले माथिल्लो स्तरका कमाण्डहरू विकास गरे, जसले सीभिएस र एसभीएनजस्तै अधिक सहज प्रयोग अनुभव दिए । गिटको प्रारम्भिक कमाण्डहरूलाई “प्लम्बिङ” र नयाँ उच्चस्तरीय कमाण्डहरूलाई “पोर्सिलेन” भनिन थालियो ।
गिटको फैलावट र गिटहबको प्रभाव
पहिले विवादले घेरिएको गिटको विकासमा, विपरीत रूपमा, उत्साह र सहकार्य देखियो । विस्तारै पोर्टहरू, एक्सटेन्सनहरू र वेबसाइटहरू देखा पर्न थाले । सन् २००८ मा गिटहब (गिटहब) सार्वजनिक भएपछि गिटको लोकप्रियता अझै तीव्र भयो । गिटहबले अनलाइन सहकार्य, कोड साझेदारी र परियोजना व्यवस्थापनलाई सहज बनायो ।
त्यसपछि खुला स्रोत परियोजनाहरू मात्र होइन, कम्पनीहरू र व्यक्तिगत विकासकर्ताहरूले पनि गिट अपनाउन थाले । शाखा बनाउने, पुल रिक्वेस्ट पठाउने, कोड समीक्षा गर्ने र मर्ज गर्ने अभ्यास आधुनिक विकास संस्कृतिको केन्द्रमा पुग्यो ।
उद्योग मानकको रूपमा गिट
आज गिट सफ्टवेयर विकासको उद्योग मानक बनिसकेको छ । गिटहब, गिटलाब र बिटबकेट जस्ता प्लेटफर्महरूले गिटलाई विश्वव्यापी बनाएका छन् । यसले विश्वभर फैलिएका टोलीहरूलाई एउटै कोडबेसमा काम गर्न दिएको छ, सीआई/सीडी र डेभओप्स प्रक्रियासँग एकीकृत भएको छ, र साना स्टार्टअपदेखि ठूला प्रविधि कम्पनीसम्म सबैका लागि अपरिहार्य उपकरण बनेको छ ।
इतिहासका महत्वपूर्ण कोसेढुङ्गा
सन् २००५ मा गिट सुरु भयो । त्यही वर्ष लिनस टोरभाल्ड्सले यसलाई बनाएका थिए । डिसेम्बर २००५ मा गिट १.० सार्वजनिक भयो । सन् २००८ मा गिटहबले वेब-आधारित सहकार्यलाई नयाँ उचाइमा पुर्यायो । सन् २०१० को दशकसम्म आइपुग्दा गिट विश्वव्यापी उद्योग मानक बनिसकेको थियो ।
सफ्टवेयर विकासमा गिटको प्रभाव
गिटले सफ्टवेयर विकासको संस्कृति नै बदलिदियो । अब विकासकर्ताहरूले एकै पटक धेरै शाखामा काम गर्न सक्ने भए । कोड समीक्षा, पुल रिक्वेस्ट र मर्ज प्रक्रिया मार्फत गुणस्तर बढ्यो । साना र ठूला दुवै प्रकारका परियोजनामा एउटै लचिलो प्रणाली प्रयोग गर्न सम्भव भयो । र गिटले विश्वभरका विकासकर्तालाई एउटै तालमा जोडिदियो ।
गिटको कथा केवल एउटा प्राविधिक उपकरणको कथा होइन । यो दबाबबाट जन्मिएको समाधानको कथा हो, विवादबाट निस्किएको नवप्रवर्तनको कथा हो, र आवश्यकता परेको बेला एउटा व्यक्तिले सम्पूर्ण क्षेत्रलाई बदल्ने क्षमता राख्छ भन्ने प्रमाण हो ।
लिनक्स कर्नेलका लागि बनाइएको यो प्रणाली आज सम्पूर्ण सफ्टवेयर संसारको मेरुदण्डजस्तै बनेको छ । सृजनात्मक विनाश, चर्को बहस र तेज प्राविधिक सोचको संयोजनबाट जन्मिएको गिट आज सहकार्य, गति र विश्वसनीयताको प्रतीक बनेको छ ।
स्टोरी
मोबाइलदेखि विद्युतीय कारसम्म: लिथियम-आयन ब्याट्रीको विकास
काठमाडौं । सन् २०१९ को रसायनशास्त्रतर्फको नोबेल पुरस्कार जोन बी. गुडइनफ (John B. Goodenough), एम.…
इनोभेटर: नेपालको आफ्नै घरेलु ‘सुपर एप’ जसले विद्यार्थीलाई सिक्न, बनाउन र आम्दानी गर्न एउटै डिजिटल चौतारी दिन खोज्दैछ
काठमाडौं । डिजिटल युगमा जहाँ विद्यार्थीहरू अनगिन्ती विज्ञापन र अनुपयुक्त सामग्रीमा अल्झिरहेका छन्, त्यहाँ …
नेपाली माटोबाट विश्व एआई मञ्चसम्म: सेजियाको यात्रा
काठमाडौं । विद्यार्थी जीवनको भागदौडको समयमा त्रिभुवन विश्वविद्यालयमा अध्ययनरत तीन युवा बासव झा, उज्ज्वल पुरी र…
इन्टरनेट युगमा अवसर : किन बढ्दो छ SEO को महत्व ?
काठमाडौं । अहिलेको जमाना इमेल इन्टरनेटको हो । कम्प्युटरमा एक क्लिक गरेको भरमा दुनियामा कहाँ के भइरहेछ भन्ने…
मेसिनलाई सिकाउने डाक्टर
विश्व अहिले कृत्रिम बुद्धिमत्ता (एआई) को क्रेजमा छ । मेसिनहरूले भाषा बुझ्ने, अनुवाद गर्ने र निर्णय प्रक्रियामा सहयोग गर्ने प्रणालीह…
सामाजिक सञ्जाल ‘मोल्टबुक’: जहाँ मानिस होइन, एआई एजेन्टहरू आफै कुरा गर्छन्
पछिल्लो एक सातायता एआई क्षेत्रमा चासो राख्नेहरूबीच ‘मोल्टबुक&r…
विश्वभर फैलिन खोज्दै नेपाली आईटी कम्पनी, विदेशमा लगानीका लागि ३ कम्पनीले पाए अनुमति
तीनवटा नेपाली आईटी कम्पनीले विदेशमा लगानी गर्नका लागि नेपाल राष्ट्र बैंकबाट अनुमति पाएका छन् । राष्ट्र बैंकले विदेशमा सहायक कम्…
जसलाई सरकारले सहयोग गरेन, उही मन्त्री बने
समयको खेल अचम्मको हुन्छ ।
जसले सहयोगका लाग…
ग्यारेजदेखि ग्लोबलसम्म: असफलताले जन्माएका चार विश्वव्यापी सफलताहरू
असफलता कुनै पनि सफल मानिसको जीवनको एउटा महत्त्वपूर्ण हिस्सा रहेको हुन्छ । असफलताले मानिसलाई धेरै कुरा सिकाउँछ ।
…१५ वर्षदेखि अमेरिकाको एआई क्षेत्रमा काम गरिरहेकी डा. रोशा
सन् २०१० को सुरूवाततिर एआई, मेसिन लर्निङ, न्युरल नेटवर्क, इमेज प्रोसेसिङ, डेटा साइन्स भर्खर भर्खर लोकप्रिय हुन थालेको थियो । नया…
नेपालका दुई ठूला वालेट मर्जर: फिनटेक क्षेत्रमा नयाँ अध्यायको सुरूवात*
नेपालको डिजिटल भुक्तानीको क्षेत्रमा नयाँ अध्यायको सुरूवात भएको छ । देशका दुई ठूला वालेट सेवा प्रदायक, खल्ती र आईएमई पे, एकसाथ…
रूसले गरेको गल्ती नदोहोर्याऔँ, अब नेपालले खुला स्रोत सफ्टवेयर अपनाउन ढिला गर्नुहुँदैन् : ओलेग बार्टुनोव
ओलेग बार्टुनोवको यात्रा डाटाबेसको संसारमा होइन, तारामण्डलमा शुरू भएको थियो । एक युवा खगोलशास्त्रीका रूपमा उनी मस्को राज्य विश्व…
अमेरिकी सिस्टम कन्सल्टिङमा जमेका कार्की, अब नेपालबाटै बनाउन चाहन्छन् ग्लोबल प्रडक्ट
नेपालीहरू विश्वका हरेक कुनामा पुगेका छन् । पुग्ने मात्र होइन उल्लेख्य सफलता समेत हासिल गरिरहेका छन् । कोही ठूला ठूला कम्पनीको म…