Di mana mengunduh kode sumber Kernel Linux untuk versi tertentu?

24

Apakah ada sumber daya untuk mengunduh sumber versi kernel tertentu? Sebagai contoh, saya ingin mendapatkan 2.6.36.2 sumber untuk dibandingkan dengan paket ini dan melihat perubahan apa yang diperkenalkan?

RaoulDuke
sumber
1
Tautan dalam pertanyaan ini tampaknya rusak.
Faheem Mitha

Jawaban:

28

Cara termudah dan paling ramah-bandwidth, jika Anda berharap untuk melakukan ini lebih dari sekali, akan mengkloning git repositori kernel dan memeriksa versi yang Anda inginkan berdasarkan tag-nya. Mungkin terbaik untuk mengkloning repo linux-stable , karena itu akan menyertakan tag untuk semua rilis stabil:

git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
cd linux
git checkout v2.6.36.2

Untuk beralih ke versi lain, mudah:

git checkout v3.5.2

Untuk memperbarui repositori Anda untuk menyertakan semua tag dan komitmen terbaru:

git fetch
Jim Paris
sumber
1
Adakah petunjuk mengapa tag minor tidak muncul di GitHub? Misalnya github.com/torvalds/linux/releases/tag/v3.5.2 vs github.com/torvalds/linux/releases/tag/v3.5 Juga di git.kernel.org/pub/scm/linux/kernel/git/ torvalds / linux.git / refs
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
1
--depthdan --branchjuga dapat secara drastis mengurangi ukuran klon: unix.stackexchange.com/a/473373/32558
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
12

Ya, kernel.org memiliki semua versi yang dirilis , termasuk 2.6.36.2 . Namun, perlu diketahui bahwa sebagian besar distribusi Linux menerapkan tambalan sendiri ke sumber kernel vanilla.

scai
sumber
9

Jika Anda tidak ingin mengunduh seluruh sejarah komit kernel (yang jauh di atas 1 GiB), Anda dapat mengunduh hanya bagian dari repo kernel Git yang mengarah ke cabang yang Anda inginkan. Misalnya untuk checkout secara lokal kernel Ubuntu di versi 4.5, Anda akan melakukan:

git clone --depth 1 --single-branch --branch v4.5  git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack

Dengan cara ini, klonnya sekitar 150 MiB.

Martin Pecka
sumber
1
--depthmenyiratkan --single-branchBTW, menurut man git-clone.
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
0

Jika Anda hanya ingin mendapatkan satu tag untuk kompilasi cepat, lakukan:

git clone --depth 1 --branch v4.18 \
  git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

--depth 1 melakukan clone dangkal, yang secara drastis mengurangi waktu clone dan penggunaan disk.

Sayangnya, ini hanya berfungsi untuk tag, bukan komitmen sewenang-wenang, karena cara kerja server cgit git dan dikonfigurasi. Lihat juga: /programming/3489173/how-to-clone-git-repository-with-specific-revision-changeset

Lihat juga: Mengapa klon git dari kode sumber kernel Linux jauh lebih besar dari tar.xz yang diekstrak?

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
sumber