我认为很多开发人员喜欢在git gui blame
的帮助下调查来源。正如commit for Linux-2.6.12-rc2(也是mirrored at Github)中所述,它需要有专门的历史Linux存储库用于此目的。
的Linux-2.6.12-RC2
初始git存储库构建。我没有打扰完整的历史, 即使我们拥有它。我们可以创建一个单独的“历史”git 如果我们想要的话,以后的存档,同时它是关于 导入到git中的3.2GB - 空间只会提早 当我们没有很多好处时,git天不必要地复杂化 它的基础设施。
让它撕裂!
我已经查看了很多准备好的历史存储库但是我没有找到包含更改的版本返回到零版本,所以我放弃了并且在这里问这个问题。
答案 0 :(得分:50)
这是我的设置。
我有一个存储库,其中包含以下遥控器的克隆:
以下移植物(info/grafts
):
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 e7e173af42dbf37b1d946f9ee00219cb3b2bea6a
7a2deb32924142696b8174cdf9b38cd72a11fc96 379a6be1eedb84ae0d476afbc4b4070383681178
通过这些移植,我对0.01以来的内核历史有一个完整的看法。第一个移植物将Linus'存储库中的第一个版本与tglx/history.git
的相应版本粘合在一起。第二个移植物粘在一起tglx/history.git
和davej/history.git
。
缺少一些旧版本,旧版本具有发布粒度而不是补丁粒度,但这是我所知道的最佳设置。
编辑: Dave Jones向我指出http://www.archive.org/details/git-history-of-linux,这似乎正是您想要的。
答案 1 :(得分:9)
引用的repos不再存在。新的在这里: https://git.kernel.org/cgit/linux/kernel/git/history/history.git/
如果你像我一样想要保留一些回购,你可以利用移植物的替代品来做到这一点:
MAINBRANCH="master"
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
# update current feature branch with master
git pull origin $MAINBRANCH
# delete existing backup
git branch -D "$CURRENT_BRANCH-backup"
# backup current feature branch and go back
git checkout -b "$CURRENT_BRANCH-backup" && git checkout -
# checkout and update master branch
git checkout $MAINBRANCH && git pull
# create new branch from master
git checkout -b "$CURRENT_BRANCH-squashed"
# set it to track the corresponding feature branch
git branch "$CURRENT_BRANCH-squashed" --set-upstream-to "$CURRENT_BRANCH"
# merge and squash the feature branch into the one created
git merge --squash $CURRENT_BRANCH
# commit the squashed changes
git commit
# force push to the corresponding feature branch
git push -f . HEAD:$CURRENT_BRANCH
# checkout the feature branch
git checkout $CURRENT_BRANCH
# delete the squashed copy
git branch -D "$CURRENT_BRANCH-squashed"
答案 2 :(得分:8)
这里是对2018年可用选项的综述,重点是标签可用性和日期正确性。
由Dave Jones开发,并在archive.org
上可用。
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
。由Thomas Gleixner创建。
由迈克尔·埃勒曼(Michael Ellerman)根据Yoann Padioleau的工作创建,基于戴夫·琼斯(Dave Jones)和托马斯·格莱克斯纳(Thomas Gleixner)重建的历史树木以及莱纳斯的主线树。
由Linux 历史小组拥有。
Fri Nov 23 15:09:04 2007 -0500
。现代Linux开发。
答案 3 :(得分:5)
我发现的最好的是git://git.kernel.org/pub/scm/linux/kernel/git/davej/history.git。跟踪的历史记录从Linux-0.01开始,但很多评论都不像“Import 2.1.38pre1”。
无论如何,有很多知识。
感谢您的帮助!