Исторический репозиторий ядра Linux с полной историей

Думаю, многим разработчикам нравится исследовать исходники с помощью git gui blame. Как объясняется в фиксации для Linux- 2.6.12-rc2 (также отражено на Github), необходимо для этой цели есть специальный исторический репозиторий Linux.

Linux-2.6.12-rc2

Начальная сборка репозитория git. Я не заморачиваюсь с полной историей, хотя она у нас есть. Мы можем создать отдельный «исторический» архив git позже, если захотим, а пока он занимает около 3,2 ГБ при импорте в git — пространство, которое просто сделало бы первые дни git излишне сложными, когда у нас нет много хорошей инфраструктуры для этого.

Пусть рвет!

Я просмотрел множество подготовленных исторических репозиториев, но не нашел ни одного, содержащего изменения, относящиеся к нулевой версии, поэтому я сдался и задаю этот вопрос здесь.


person ashrugger    schedule 16.07.2010    source источник


Ответы (4)


Вот моя установка.

У меня есть репозиторий с клоном следующих пультов:

И следующие трансплантаты (info/grafts):

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 e7e173af42dbf37b1d946f9ee00219cb3b2bea6a
7a2deb32924142696b8174cdf9b38cd72a11fc96 379a6be1eedb84ae0d476afbc4b4070383681178

Благодаря этим трансплантатам у меня есть непрерывный обзор истории ядра с версии 0.01. Первая прививка склеивает самый первый релиз в репозитории Линуса с соответствующим релизом tglx/history.git. Второй трансплантат склеивает tglx/history.git и davej/history.git.

Отсутствует несколько более старых версий, и в более старых версиях используется гранулярность выпуска вместо гранулярности патчей, но это лучшая установка, которую я знаю.


Редактировать: Дэйв Джонс указал мне на http://www.archive.org/details/git-history-of-linux, похоже, это именно то, что вам нужно.

person CesarB    schedule 15.11.2011
comment
Обратите внимание, что после компрометации kernel.org несколько месяцев назад все репозитории были удалены с git.kernel.org. torvalds/linux.git, stable/linux-stable.git и tglx/history.git уже вернулись; davej/history.git все еще отсутствует. - person CesarB; 15.11.2011
comment
Я загрузил свою копию репозитория davej/history.git в repo.or.cz/w/davej-history .git - person CesarB; 27.11.2012
comment
спасибо за зеркало! Я сделал дополнительные зеркала на github github.com/schwabe/davej-history и github.com/schwabe/tglx-history на всякий случай - person plaisthos; 11.10.2016

Вот обзор доступных вариантов 2018 года с акцентом на доступность тегов и правильность дат.

https://archive.org/download/git-history-of-linux/full-history-linux.git.tar

Разработано Дэйвом Джонсом и доступно на archive.org.

  • Охватывает ранние версии до 2010 года.
  • 244 464 фиксации
  • Всего 184 тега, охватывающих версии 2.6. Теги которые должны были быть созданы для всех версий вроде отсутствует.
  • Ранние коммиты имеют реалистичные даты, но неверное время (11:00:00 199X -0600).
  • Некоторые даты кажутся неверными. Например, и 2.1.110, и 2.1.111 датированы Wed May 20 11:00:00 1998 -0600, хотя последний файл в моментальном снимке 2.1.111 датирован 1998-07-25 09:17.
  • Процесс создания задокументирован на GitHub и кажется очень тщательным.

https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/

Создано Томасом Глейкснером.

  • Охватывает версии от 2.4.0 до 2.6.12-rc2.
  • Содержит 170 тегов, охватывающих 2.5.X и 2.6.X.
  • 63 428 коммитов
  • Даты правильные.
  • Содержит патчи, преобразованные в коммиты.

https://github.com/mpe/linux-fullhistory

Создано Майклом Эллерманом на основе работы Йоанна Падиоло на основе исторических деревьев, реконструированных Дэйвом Джонсом и Томасом Глейкснером, и основного дерева Линуса.

  • Охватывает всю историю
  • Предоставляет только 558 тегов, в основном начиная с 2.0.0.
  • 790 471 коммит
  • Те же проблемы с датами, что и в репозитории Дэйва Джонса.
  • Использует замещающие объекты вместо трансплантатов.

https://git.kernel.org/pub/scm/linux/kernel/git/history/history.git/

Принадлежит группе истории Linux.

  • Охватывает ранние версии до 2.6.33-rc5.
  • 1710 тегов, начиная с 0.10, охватывающих самые ранние версии.
  • 244 774 фиксации
  • Большинство исторических версий неправильно датированы Fri Nov 23 15:09:04 2007 -0500.

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/

Современная разработка Linux.

  • Охватывает 2.6.12-rc2 (2005 г.) до сегодняшнего дня.
  • 569 тегов
  • 777 419 коммитов (август 2018 г.)
  • Правильные коммиты
person Diomidis Spinellis    schedule 17.08.2018

указанные репозитории больше не существуют. новый находится здесь: https://git.kernel.org/cgit/linux/kernel/git/history/history.git/

если вы похожи на меня и хотите сохранить несколько репозиториев, вы можете использовать альтернативы с прививкой, чтобы сделать это:

# Same dir as main linux
$ git clone --bare git://git.kernel.org/pub/scm/linux/kernel/git/history/history.git
$ cd linux/.git/
$ echo ../../../history.git/objects >> objects/info/alternates
$ echo 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 e7e173af42dbf37b1d946f9ee00219cb3b2bea6a >> info/grafts
$ echo 7a2deb32924142696b8174cdf9b38cd72a11fc96 379a6be1eedb84ae0d476afbc4b4070383681178 >> info/grafts
person Mike Frysinger    schedule 23.12.2015

Лучшее, что я нашел, это git://git.kernel.org/pub/scm/linux/kernel/git/davej/history.git. Отслеживание истории там начинается с Linux-0.01, но многие комментарии убогие, типа "Импорт 2.1.38pre1".

В любом случае есть много знаний.

Спасибо за помощь!

person ashrugger    schedule 16.07.2010