Answers:
克隆存储库,使用命令行打开并运行 $ git log --reverse
这将以相反的顺序显示提交。
然后,一旦有了第一次提交的ID(Object Name),就可以在github上查看它…… https://github.com/UserName/Repo/commit/6a5ace7b941120db5d2d50af6321770ddad4779e
oneline
arg,git log --reverse --oneline
以便您可以将其作为列表查看
git log --reverse --oneline | more
。标准more
行为,按Ctrl + C退出。
没有明显的UI可以执行此操作,但是有一种方法可以构造正确的URL以转到提交日志的第一页。
假设我们想找到dotnet / coreclr存储库的第一次提交。首先记下存储库中的提交数:目前为16,634。现在去提交的列表,然后单击“老” 一次。该URL将是这样的:https://github.com/dotnet/coreclr/commits/master?after=872095a758a3a6191a9798c94a98e8d1e16b2254+34
注意+34
零件。那就是跳过了多少提交。将其更改为每页16,634减去1减去35,这将为我们提供此URL,使您直接进入coreclr提交历史记录的第一页。
2015 年 2月:在GitHub中,有没有一种简便的方法可以导航到大型开源项目的最早提交?
是的,现在有!(意思是:不克隆仓库,而是申请git log
本地克隆)
从2017年1月开始,您就可以在GitHub上“ 通过改进的责备视图更快地浏览文件历史记录 ”。
无论是调试回归还是试图了解某些代码如何具有当前形状,您通常都希望在进行特定更改之前先查看文件的外观。
使用改进的非常规视图,您可以轻松查看文件的任何部分随时间的变化,而无需查看文件的完整历史记录。
这是一个演示,只需单击三下,就可以返回git / git repo本身的原始最早提交(47K +次提交)!
这里的技巧是选择一个可能在第一次(或很早)提交中找到的文件,例如README.md
。
Browse files
并打开另一个文件的责任来重复该过程。
git log
,如果你在本地克隆(潜在的巨大)的回购协议才有效。如果您想“ 导航 ”到第一个提交,就是这样。
我想看一下nodejs项目的最早提交之一。我已经做了以下工作。
现在向下滚动到底部,我发现了“较新”和“较旧”按钮。较新按钮被禁用。我单击了较旧的按钮,然后我进入了https://github.com/nodejs/node/commits/master?after=de37ba34c5d6f3a2d18daf482f850be8fddb4621+34
现在,请注意该网址具有+34。现在,我将其更改为23000(因为我观察到的提交数为23000)。所以我尝试的新网址是
https://github.com/nodejs/node/commits/master?after=de37ba34c5d6f3a2d18daf482f850be8fddb4621+23000
您可以使用init bookmarklet导航到GitHub存储库的第一次提交。
在里面
一个书签,可让您快速进行回购的首次提交。
总览
能够快速导航到存储库中最旧的提交非常有帮助。继续,将小书签(链接)拖到书签栏上,并在需要进行第一次回购时单击它。
用法
转到任何特定存储库的登录页面
(e.g. like the one you're on)
,然后单击书签,这将带您到第一页(初始提交)。默认情况下,它跟踪master
分支,但是如果您更改branch
登录页面上的,它将转到该分支的第一次提交。
您可以通过以下内容进入提交的第一页,我将其保留为Chrome开发工具中的一部分。
function githubFirstCommitsPage() {
let el = document.querySelector('.repository-content');
let base = el.querySelector('a[data-pjax]').href;
let count = el.querySelector('.commits .num')
.textContent
.trim()
.replace(/[^\d\.\-]/g, "");
count = count-36;
let sha = el.querySelector('.commit-tease-sha')
.href
.split('/');
sha = sha[sha.length-1];
window.location = `${base}?after=${sha}+${count}`;
}
githubFirstCommitsPage();
您需要使用 git log --reverse
git命令。
这将以相反的顺序(最旧到最新)返回指定存储库的提交历史。
然后,借助一些sed
魔术,您可能会遇到第一次提交的日期(这是我一直看到的自己一直需要的日期)。
git log --reverse | sed -n 3p
最终,你可能想以及(,因为它主要是要么无聊键入命令或只是不可能记住它)自动执行此,因此喜欢的shell脚本这一个可能前来救援。
您可以使用此Web应用程序快速挖掘第一次提交https://firstcommit.netlify.com/