特定のバージョンのLinuxカーネルソースコードをダウンロードする場所


回答:


28

これを複数回行う場合、最も簡単で帯域幅に優しい方法は、カーネルのgitリポジトリのクローンを作成し、そのタグに基づいて必要なバージョンをチェックアウトすることです。おそらく、すべての安定版リリースのタグが含まれるため、linux-stable repoを複製するのが最善です。

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


1
--depthまた--branch、クローンサイズを大幅に縮小できます。unix.stackexchange.com
Ciro Santilli新疆改造中心法轮功六四事件


9

カーネルコミット履歴全体(1 GiBをはるかに超える)をダウンロードしたくない場合は、目的のブランチにつながるカーネルGitリポジトリのそのような部分のみをダウンロードできます。たとえば、バージョン4.5でUbuntuカーネルをローカルでチェックアウトするには、次のようにします。

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

この方法では、クローンは約150 MiBです。


1
--depth--single-branchによると、BTWを意味しman git-cloneます。
Ciro Santilli新疆改造中心法轮功六四事件

0

迅速なコンパイルのために1つのタグを取得するだけの場合は、次のようにします。

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

--depth 1 浅いクローンを作成し、クローン作成時間とディスク使用量を大幅に削減します。

これは、cgit gitサーバーの動作方法と設定方法が原因で、現在残念なことにタグに対してのみ機能し、arbitrary意的なコミットに対しては機能しません。参照:https : //stackoverflow.com/questions/3489173/how-to-clone-git-repository-with-specific-revision-changeset

参照:Linuxカーネルソースコードのgitクローンが、抽出されたtar.xzよりもはるかに大きいのはなぜですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.