在你决定克隆它之前,有没有办法看看GitHub上的Git存储库有多大?
这似乎是一个非常明显/基本的统计数据,但我根本找不到如何在GitHub上看到它。
在你决定克隆它之前,有没有办法看看GitHub上的Git存储库有多大?
这似乎是一个非常明显/基本的统计数据,但我根本找不到如何在GitHub上看到它。
当前回答
你需要遵循GitHub API。有关存储库的所有详细信息,请参阅这里的文档。 它需要你做出一个GET请求,如:
获得/回购:所有者/:库
你需要替换两个东西:
:owner—存储库所有者的用户名 :repository—存储库名称
例如,我的用户名maheshmnj,我拥有一个存储库,flutter-ui-nice,所以我的GET URL将是:
https://api.github.com/repos/maheshmnj/flutter-ui-nice
在发出GET请求时,您将收到一些JSON数据,可能在第78行中您应该看到一个名为size的键,它将返回存储库的大小。
提示:当使用JSON时,我建议您添加一个插件来格式化JSON数据,使读取JSON变得容易。安装插件。
其他回答
@larowlan很棒的示例代码。在新的GitHub API V3中,curl语句需要更新。此外,不再需要登录:
curl https://api.github.com/repos/$2/$3 2> /dev/null | grep size | tr -dc '[:digit:]'
例如:
curl https://api.github.com/repos/dotnet/roslyn 2> /dev/null | grep size | tr -dc '[:digit:]'
返回931668 (KB),几乎是GB。
私有回购需要身份验证。一种方法是使用GitHub个人访问令牌:
curl -u myusername:$PERSONAL_ACCESS_TOKEN https://api.github.com/repos/$2/$3 2> /dev/null | grep size | tr -dc '[:digit:]'
我创建了一个bookmarklet脚本来使用NVRM的答案的方法来做到这一点。
要使用它,请创建一个新书签,为其命名,并将此脚本粘贴到URL字段中。在浏览一个回购时点击这个书签会弹出一个提醒,提醒的大小有兆字节和千字节。
javascript:(()=>{let url=new URL(document.location.href);if(url.origin!="https://github.com"){return}if(url.pathname=="/"){return}let p=url.pathname.slice(1,url.pathname.length);let parts=p.split('/');if(parts.length<2){return}let x=[parts[0],parts[1]].join('/');fetch(`https://api.github.com/repos/${x}`).then(r=>r.json()).then((b)=>alert(`${(b['size']/1000).toFixed(2)}mb (${b['size']}kb)`))})()
对于私有存储库,您需要从https://github.com/settings/tokens获取个人访问令牌。
然后使用以下curl命令获取详细信息(用值替换[token], [owner]和[name]):
curl -u git:[token] https://api.github.com/repos/[owner]/[name] 2> /dev/null | grep size
如前所述,大小的单位可以是MB或KB。
在浏览器中,使用JavaScript,因为Github API启用了CORS:
fetch(“https://api.github.com/repos/webdev23/source_control_sentry”) .then(v => v.json()).then((v) => { console.log(v['size'] + 'KB') } )
如果您拥有存储库,您可以通过打开帐户设置→存储库(https://github.com/settings/repositories)找到确切的大小,存储库的大小显示在其名称旁边。
如果您不拥有存储库,则可以对其进行分叉,然后在同一位置检查。
注意:您可能是拥有多个存储库的组织的所有者,但在组织内的特定存储库中没有角色。默认情况下,即使您在自己拥有的组织中创建了存储库,也不会添加到repo,因此在设置/存储库中看不到该repo。所以把自己添加到存储库设置(https://github.com/org-name/repo-name/settings)中,在https://github.com/settings/repositories中看到它
有点hack:使用下载压缩文件选项,读取文件大小指示,然后取消它。
我不记得以zip格式下载是否有效,但无论如何,现在这样做只下载当前选择的没有历史记录的分支。