Есть ли ресурс для загрузки определенного источника версии ядра? Например, я хочу получить исходники 2.6.36.2 для сравнения с этим пакетом и посмотреть, какие изменения были внесены?
Есть ли ресурс для загрузки определенного источника версии ядра? Например, я хочу получить исходники 2.6.36.2 для сравнения с этим пакетом и посмотреть, какие изменения были внесены?
Ответы:
Самый простой и наиболее благоприятный для полосы пропускания способ, если вы собираетесь делать это более одного раза, - это клонировать репозиторий git ядра и проверить версию, которую вы хотите, основываясь на ее теге. Вероятно, лучше всего клонировать Linux-стабильный репозиторий , поскольку он будет включать теги для всех стабильных выпусков:
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 . Однако обратите внимание, что большинство дистрибутивов Linux применяют собственные патчи к исходному коду ядра.
Если вы не хотите загружать всю историю коммитов ядра (которая значительно превышает 1 ГиБ), вы можете загрузить только ту часть ядра Git-репо, которая ведет к нужной вам ветке. Например, чтобы локально получить ядро 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 МиБ.
--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
делает неглубокий клон, что резко сокращает время клонирования и использование диска.
К сожалению, в настоящее время он работает только для тегов, а не для произвольных фиксаций, из-за того, как работает и настроен сервер gg git. Смотрите также: /programming/3489173/how-to-clone-git-repository-with-specific-revision-changeset
См. Также: Почему git-клон исходного кода ядра Linux намного больше, чем извлеченный tar.xz?