在你决定克隆它之前,有没有办法看看GitHub上的Git存储库有多大?

这似乎是一个非常明显/基本的统计数据,但我根本找不到如何在GitHub上看到它。


当前回答

我创建了一个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)`))})()

其他回答

如果你已经安装了官方的GitHub CLI,你可以执行以下操作:

gh api repos/<org>/<repo> --jq '.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。

我创建了一个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/repositories)找到确切的大小,存储库的大小显示在其名称旁边。

如果您不拥有存储库,则可以对其进行分叉,然后在同一位置检查。

注意:您可能是拥有多个存储库的组织的所有者,但在组织内的特定存储库中没有角色。默认情况下,即使您在自己拥有的组织中创建了存储库,也不会添加到repo,因此在设置/存储库中看不到该repo。所以把自己添加到存储库设置(https://github.com/org-name/repo-name/settings)中,在https://github.com/settings/repositories中看到它

有点hack:使用下载压缩文件选项,读取文件大小指示,然后取消它。

我不记得以zip格式下载是否有效,但无论如何,现在这样做只下载当前选择的没有历史记录的分支。

使用curl (sudo apt-get curl)和jsonpretty (sudo gem install jsonpretty json)来做到这一点:

curl -u "YOURGITHUBUSERNAME" http://github.com/api/v2/json/repos/show/OWNER/REPOSITORY |
  jsonpretty

用你的GitHub用户名替换YOURGITHUBUSERNAME。

将OWNER替换为存储库所有者的Git用户名。 将REPOSITORY替换为存储库名称。

或者作为一个漂亮的Bash脚本(粘贴到一个名为gitrepo-info的文件中):

#!/bin/bash
if [ $# -ne 3 ]
then
  echo "Usage: gitrepo-info <username> <owner> <repo>"
  exit 65
fi
curl -u "$1" http://github.com/api/v2/json/repos/show/$2/$3|jsonpretty

像这样使用它:

gitrepo-info larowlan pisi reel

这将给我关于GitHub上的pisi/reel存储库的信息。