web-dev-qa-db-ja.com

完全な履歴を持つLinuxカーネルの「履歴」gitリポジトリ

多くの開発者はgit gui blameの助けを借りてソースを調査するのが好きだと思います。 Linuxのコミット-2.6.12-rc2 (また Githubでミラーリング )で説明されているように、この目的のために特別な履歴Linuxリポジトリが必要です。

Linux-2.6.12-rc2

最初のgitリポジトリビルド。私たちには歴史がありますが、私は完全な歴史に悩まされていません。必要に応じて、後で別の「履歴」gitアーカイブを作成できます。それまでの間、gitにインポートすると約3.2 GBになります。このスペースでは、gitの初期の日が不必要に複雑になり、そのための優れたインフラストラクチャがたくさんあります。

破れましょう!

準備された履歴リポジトリをたくさん調べましたが、バージョン0に戻る変更を含むリポジトリが見つからなかったため、あきらめてここでこの質問をしています。

47
ashrugger

これが私の設定です。

次のリモートのクローンを含むリポジトリがあります。

そして、次の移植片(info/grafts):

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 e7e173af42dbf37b1d946f9ee00219cb3b2bea6a
7a2deb32924142696b8174cdf9b38cd72a11fc96 379a6be1eedb84ae0d476afbc4b4070383681178

これらの移植により、0.01以降のカーネル履歴を途切れることなく見ることができます。最初のグラフトは、Linusのリポジトリの最初のリリースと対応するtglx/history.gitのリリースを結合します。 2番目のグラフトはtglx/history.gitdavej/history.gitを接着します。

いくつかの古いバージョンが欠落しており、古いバージョンにはパッチの粒度ではなくリリースの粒度がありますが、これは私が知っている中で最高のセットアップです。


編集:デイブジョーンズは私に http://www.archive.org/details/git-history-of-linux を指摘しました=、これはまさにあなたが望むもののようです。

50
CesarB

これは、タグの可用性と日付の正確さに焦点を当てた、利用可能な2018オプションのレビューです。

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

Dave Jonesによって開発され、archive.orgで利用可能になりました。

  • 2010年までの初期バージョンをカバーしています。
  • 244,464コミット
  • 2.6のバージョンをカバーするわずか184個のタグ。タグ すべてのバージョンで作成されているはずです が欠落しているようです。
  • 初期のコミットには現実的な日付がありますが、時刻が正しくありません(11:00:00 199X -0600)。
  • 一部の日付が正しくないようです。たとえば、2.1.1102.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/

ThomasGleixnerによって作成されました。

  • 2.4.0から2.6.12-rc2をカバーします。
  • 2.5.Xおよび2.6.Xをカバーする170個のタグが含まれています。
  • 63,428コミット
  • 日付は正しいです。
  • コミットに変換されたパッチが含まれます。

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

デイブジョーンズとトーマスグレイクスナーによって再建された歴史的な木とライナスのメインラインの木に基づいて、ヨアンパディオローの作品から派生したマイケルエラマンによって作成されました。

  • 完全な歴史をカバー
  • ほとんどが2.0.0以降の558個のタグのみを提供します。
  • 790,471コミット
  • デイブジョーンズのレポと同じ日付の問題。
  • 移植片の代わりに置換オブジェクトを使用します。

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

Linux履歴チームが所有しています。

  • 2.6.33-rc5までの初期バージョンをカバーしています。
  • 0.10から始まる1710タグで、ほとんどの初期バージョンをカバーしています。
  • 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年8月)
  • 適切なコミット
9

参照されたリポジトリはもう存在しません。新しいものはここにあります: 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
9
Mike Frysinger

私が見つけた最高のものは git://git.kernel.org/pub/scm/linux/kernel/git/davej/history.git です。そこでの履歴追跡はLinux-0.01から始まりますが、多くのコメントは「Import2.1.38pre1」のように貧弱です。

とにかくたくさんの知識があります。

手伝ってくれてありがとう!

5
ashrugger