क्या एक विशिष्ट कर्नेल संस्करण स्रोत डाउनलोड करने के लिए कोई संसाधन है? उदाहरण के लिए, मैं इस पैकेज की तुलना करने के लिए 2.6.36.2 स्रोत प्राप्त करना चाहता हूं और देखें कि क्या बदलाव पेश किए गए थे?
क्या एक विशिष्ट कर्नेल संस्करण स्रोत डाउनलोड करने के लिए कोई संसाधन है? उदाहरण के लिए, मैं इस पैकेज की तुलना करने के लिए 2.6.36.2 स्रोत प्राप्त करना चाहता हूं और देखें कि क्या बदलाव पेश किए गए थे?
जवाबों:
सबसे आसान और सबसे बैंडविड्थ-अनुकूल तरीका, यदि आप एक से अधिक बार ऐसा करने की अपेक्षा करते हैं, तो कर्नेल की गिट रिपॉजिटरी को क्लोन करना होगा और इसके टैग के आधार पर आपके इच्छित संस्करण की जांच करना होगा। संभवतः लिनक्स-स्थिर रेपो को क्लोन करना सबसे अच्छा है , क्योंकि इसमें सभी स्थिर रिलीज के लिए टैग शामिल होंगे:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
cd linux
git checkout v2.6.36.2
बाद में दूसरे संस्करण में जाना आसान है:
git checkout v3.5.2
सभी नवीनतम टैग और कमिट शामिल करने के लिए अपनी रिपॉजिटरी को अपडेट करने के लिए:
git fetch
हाँ, kernel.org है सभी संस्करण जारी सहित, 2.6.36.2 । ध्यान दें, हालांकि, अधिकांश लिनक्स वितरण वेनिला कर्नेल स्रोत पर खुद के पैच लागू करते हैं।
यदि आप पूरी कर्नेल कमिट हिस्ट्री (जो कि 1 GiB से ऊपर है) डाउनलोड नहीं करना चाहते हैं, तो आप कर्नेल गिट रेपो के केवल ऐसे हिस्से को डाउनलोड कर सकते हैं जो आपकी इच्छित शाखा की ओर जाता है। उदाहरण के लिए, स्थानीय स्तर पर Ubuntu कर्नेल को 4.5 संस्करण में जांचना, आप करेंगे:
git clone --depth 1 --single-branch --branch v4.5 git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack
इस तरह, क्लोन लगभग 150 MiB है।
--depth
तात्पर्य --single-branch
, BTW के अनुसार man git-clone
।
यदि आप त्वरित संकलन के लिए केवल एक टैग प्राप्त करना चाहते हैं, तो करें:
git clone --depth 1 --branch v4.18 \
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
--depth 1
उथला क्लोन करता है, जो क्लोन समय और डिस्क उपयोग को काफी कम करता है।
यह केवल वर्तमान में दुर्भाग्य से टैग के लिए काम करता है, न कि मनमाने ढंग से करता है, क्योंकि कैसे cit git सर्वर काम करता है और कॉन्फ़िगर किया गया है। इसे भी देखें: /programming/3489173/how-to-clone-git-repository-with-specific-revision-changeset
यह भी देखें: लिनक्स कर्नेल स्रोत कोड का git क्लोन क्यों निकाले गए tar.xz से बहुत बड़ा है?