具有完整历史的Linux内核“历史”git存储库

我想很多开发者喜欢在git gui blame的指导下进行调查。 正如Linux-2.6.12-rc2 (也在Github上进行镜像 )的提交中所解释的, 为此需要特殊的历史Linux存储库。

Linux的2.6.12-RC2

初始的git存储库构build。 尽pipe我们已经拥有了,但我并不打扰整个历史。 如果我们愿意的话,我们可以创build一个单独的“历史”git存档,同时当导入到git空间时,大约3.2GB,这将使早期的git时间不必要地复杂,当我们没有很多好的基础设施。

让它撕裂!

我已经看了很多准备好的历史库,但是我没有发现一个包含了可以回到版本0的变化,所以我放弃了,并且在这里问这个问题。

这是我的设置。

我有一个与以下远程克隆的存储库:

以下移植物( info/grafts ):

 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 e7e173af42dbf37b1d946f9ee00219cb3b2bea6a 7a2deb32924142696b8174cdf9b38cd72a11fc96 379a6be1eedb84ae0d476afbc4b4070383681178 

有了这些移植物,我从0.01以后就可以看到内核的历史了。 第一次移植将Linus仓库中的第一个版本与相应的tglx/history.git版本粘合在一起。 第二个移植将tglx/history.gitdavej/history.git粘合在一起。

有几个旧版本遗漏,旧版本有发布粒度,而不是补丁粒度,但这是我所知道的最好的设置。


编辑:戴夫琼斯指出我到http://www.archive.org/details/git-history-of-linux ,这似乎正是你想要的。

引用的仓库不再存在。 新的是在这里: https : //git.kernel.org/cgit/linux/kernel/git/history/history.git/

如果你像我一样想要保留一些回复sep,你可以利用与移植的交替来做到这一点:

 # 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 

我发现最好的是git://git.kernel.org/pub/scm/linux/kernel/git/davej/history.git 。 历史跟踪从Linux-0.01开始,但很多评论是不好的,如“导入2.1.38pre1”。

无论如何,有很多的知识。

感谢帮助!