कल, मैंने Git की मुख्य कार्यक्षमताओं में से एक को स्वयं लागू करने का निर्णय लिया- विशेष रूप से, फ़ाइलें कैसे संग्रहीत की जाती हैं, Git ऑब्जेक्ट क्या हैं, और हैशिंग और कंप्रेसिंग की प्रक्रियाएं। इसे विकसित करने में मुझे 4 घंटे लगे, और इस लेख में, मैं आपको अपनी विचार प्रक्रिया और दृष्टिकोण के बारे में बताऊंगा।
जब आप Git में कोई फ़ाइल बनाते हैं, तो हुड के अंतर्गत कई महत्वपूर्ण चरण होते हैं:
फ़ाइल की सामग्री को उसके आकार को कम करने के लिए zlib एल्गोरिदम का उपयोग करके संपीड़ित किया जाता है। यह संपीड़ित सामग्री Git ऑब्जेक्ट डेटाबेस में संग्रहीत होती है।
संपीड़ित फ़ाइल सामग्री से एक अद्वितीय SHA-1 हैश उत्पन्न होता है। यह हैश Git ऑब्जेक्ट डेटाबेस में फ़ाइल के लिए पहचानकर्ता के रूप में कार्य करता है।
ऑब्जेक्ट फ़ाइल को हैश के पहले दो अक्षरों द्वारा व्यवस्थित .mygit/objects निर्देशिका में संग्रहीत किया जाता है। यह संरचना वस्तुओं को कुशलतापूर्वक प्रबंधित करना और पुनः प्राप्त करना आसान बनाती है।
प्रतिबद्ध जानकारी अद्यतन कर रहा है:
यह प्रदर्शित करने के लिए कि फ़ाइलें git में कैसे संग्रहित की जाती हैं।
मैंने एक फ़ाइल को ध्यान में रखते हुए प्रतिबद्ध कार्यक्षमता लागू की है
मैंने इस एल्गोरिदम को अपने दृष्टिकोण के आधार पर लागू किया है, लेकिन Git इन परिचालनों के लिए अधिक कुशल एल्गोरिदम का उपयोग करता है।
गिटहब रेपो
लिंक्डइन
आपके समय के लिए बहुत बहुत धन्यवाद।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3