Recientemente कुछ लोगों ने लिनक्स कर्नेल के स्रोत कोड में एक अजीब बदलाव देखा, के लिए GitHub पर कर्नेल कोड की समीक्षा करते समय उन्होंने तीसरे पक्षों द्वारा किए गए बदलावों पर ध्यान दिया (जो लोग क्लोन करते हैं या इस एक को कांटा करते हैं) मुख्य भंडार में अजीब तरह से दिखाई दे रहे थे।
इसने GitHub इंटरफ़ेस पर कुछ का ध्यान आकर्षित किया क्योंकि एक दिलचस्प विशेषता सामने आई थी जो आपको मुख्य परियोजना में पहले से ही शामिल बदलाव के रूप में किसी भी तृतीय-पक्ष परिवर्तन को प्रस्तुत करने की अनुमति देता है।
उदाहरण के लिए, आज सामाजिक नेटवर्क में मुख्य लिनक्स कर्नेल रिपॉजिटरी के आधिकारिक दर्पण में बदलाव का संदर्भ फैलने लगा, जो एचआईडी-सैमसंग चालक में एक पिछले दरवाजे के प्रतिस्थापन का संकेत देता है।
GitHub quirk अलार्म कर्नेल डेवलपर्स
इस संघर्ष का सामना किया कुछ ने विशेष रूप से सैमसंग ड्राइवर में कर्नेल कोड की जांच करना शुरू किया यदि कर्नेल सुरक्षा से समझौता किया गया था, तो सत्यापित करने का प्रयास करने के अलावा।
स्थिति के विश्लेषण से पता चला है कि GitHub, भंडारण को अनुकूलित करने और अपने सर्वर पर डेटा के दोहराव को कम करने के लिए, मुख्य भंडार से सभी वस्तुओं को संग्रहीत करता है और इससे जुड़ी शाखाएं, तार्किक रूप से कमिट्स का स्वामित्व साझा करती हैं।
जिस यह संग्रहण किसी भी व्यक्ति को, जो किसी भी संबंधित भंडार में किसी भी कांटे से किसी भी पुष्टि को देखने के लिए कोड के भीतर ब्राउज़ कर रहा है, स्पष्ट रूप से URL में अपने हैश का संकेत देता है।
उदाहरण के लिए, पिछले दरवाजे के डेमो के मामले में, उपयोगकर्ताओं में से एक ने GitHub इंटरफ़ेस में मुख्य लिनक्स कर्नेल रिपॉजिटरी का एक कांटा बनाया, फिर अपने कांटे के साथ पिछले दरवाजे जैसे कोड के साथ एक प्रतिबद्ध जोड़ा।
उसके बाद, इसने एक लिंक बनाया जहां बाहरी परिवर्तन के SHA1 पहचानकर्ता को मुख्य भंडार के URL में प्रतिस्थापित किया गया था।
जब एक समान लिंक खोला जाता है, तो मुख्य भंडार के संदर्भ में GitHub इंटरफ़ेस में एक बाहरी प्रतिबद्ध प्रदर्शित किया जाता है, भले ही यह कांटा पर किया गया हो और इसका मुख्य भंडार से कोई लेना-देना नहीं है और इसमें ऐसी कोई प्रतिबद्धता नहीं है।
इसके अलावा, GitHub इंटरफ़ेस में, व्यक्तिगत फ़ाइलों के लिए चैंज देखने पर, मुख्य रिपॉजिटरी में थर्ड-पार्टी कमिट भी दिखाई देता है, जो बहुत भ्रम पैदा करता है।
कुछ लोगों ने यह सोचा कि यह एक हैक था और उन्होंने लिनक्स कर्नेल के स्रोत कोड के लिए दुर्भावनापूर्ण कोड पेश किया था।
खैर, जैसा कि हम पहली नज़र में छवि में देख सकते हैं, ऐसा लगता है कि सम्मिलित कोड मुख्य लिनक्स कर्नेल रिपॉजिटरी में संग्रहीत किए गए भाग का हिस्सा है।
और यह कि पहली बार यह बाहरी रिपॉजिटरी के संदर्भ नहीं बनाता है जहां संशोधन किए गए थे।
यह सब झूठा अलार्म था
इस "त्रुटि" (बोलने के लिए) ने कई लोगों को चिंतित कर दिया, क्योंकि इस समय उन्हें नहीं पता था कि क्या वे कोई जोखिम चला रहे हैं या कर्नेल की अखंडता से समझौता किया गया है।
मैं बहुत कम समय बिताता हूं उन्हें यह एहसास दिलाने के लिए कि जब git कमांड का उपयोग करके डेटा को निकाल रहे हों या किसी रिपॉजिटरी को क्लोन कर रहे हों, परिणामी रिपॉजिटरी में थर्ड-पार्टी परिवर्तन गायब थे।
GitHub ने केवल एक नज़र में परिवर्तनों को प्रस्तुत किया जब वास्तव में यह नहीं है।
फिलहाल इसके बारे में कोई अधिक जानकारी नहीं है और यदि जीथब (माइक्रोसॉफ्ट) के लोगों को इस बात का कोई हल निकालना है, जो कर्नेल स्रोत कोड प्राप्त करते समय विकास को सीधे प्रभावित नहीं करता है।
लेकिन क्या होगा अगर यह कई लोगों को भ्रमित कर सकता है जो गिथूब पर संग्रहीत परियोजनाओं के कुछ हिस्सों की समीक्षा करना चुनते हैं।
ठीक है, यह कुछ ऐसा नहीं है जो सीधे लिनक्स कर्नेल कोड में दिखाया गया है, लेकिन यह अन्य परियोजनाओं के कांटे या कांटे में भी दिखाया जाएगा।
इसलिए यह संभव है कि इस प्लेटफ़ॉर्म के कई डेवलपर्स या उपयोगकर्ता पहले ही GitHub के लोगों को कुछ ईमेल भेज चुके हैं।
अगर आप इस विषय में थोड़ा और जानना चाहते हैंआप देख सकते हैं निम्नलिखित लिंक जहां कोड ने इस स्थिति का गठन किया है वह अभी भी दिखाया गया है और इसके बारे में टिप्पणियां भी इसके बारे में यहाँ।