最近我一直在使用GitHub,我想知道github.com上托管的文件的存储库大小限制是什么?
根据2019年版本的本页(存档)和https://help.github.com/articles/working-with-large-files/,回购大小没有限制,但超过1gb后,他们可能会给你发邮件,要求减小大小:
我们建议每个存储库保持在1GB以下。如果存储库中不包含大文件,则很容易保持这个限制。如果你的存储库超过1GB,你可能会收到一封来自GitHub Support的礼貌邮件,要求你减小存储库的大小。
此外,您将看到推送大于50mb的文件的警告,而大于100mb的文件将不被接受。
来自GitHub的文档:
GitHub没有任何磁盘配额。我们试图在合理的范围内为所有Git存储库提供丰富的存储空间。保持存储库小可以确保我们的服务器速度快,用户下载也快。
and
此外,我们严格限制文件大小超过100 MB。
现在是我回答的非罐装部分。GitHub可能允许你存储高达100MB的文件,但你也应该警惕不要版本二进制或其他类似的blob类型文件。这样做的原因是Git不能很好地处理二进制文件,存储可能是一个很大的惩罚。因此,如果你发现自己每个文件压入100MB,你应该检查一下你在处理什么类型的文件。
已知的限制
有多个回购规模限制适用。
软限制
截至2023年,根据文档,这是5gb。如果你超过了这个限制,你可能会收到一封来自GitHub支持的电子邮件。
我们建议存储库保持较小,理想情况下小于1 GB,强烈建议小于5 GB。
如果你碰巧收到来自GitHub支持的一封限制一次或多次公开回购的电子邮件,请将其作为对这个答案的评论,并附上回购的链接,包括围绕它的情况。
Git推送警告限制
截至2020年,以下摘录的存档文档(备份)说明如下。有理由认为这一点仍然适用。这个限制显然可以忽略不计。
如果达到75GB,下次您执行更改时,将在终端中收到Git发出的警告。
此外,对于每个超过50MB但低于硬限制的文件,您将在终端中收到警告。
硬限制
截至2023年,尽管文档没有说明每个存储库的硬限制,但可以合理地假设,之前记录的每个存储库100gb的硬限制仍然适用,至少在收到来自GitHub支持的任何理论电子邮件之前。文档(也摘录在下面)只说明了每个文件的硬限制为100mb。
存储库中的单个文件被严格限制为100 MB 最大尺寸限制。
截至2020年,以下摘录的归档文档指出,每个存储库的硬限制是100gb。同样,可以合理地假设这一硬性限制仍然适用。
存储库的硬大小限制为100GB。
截至2018年,已记录的(存档链接)推送大小限制为2 GB,尽管相关考虑也适用于大型推送。
我们不允许超过2GB的推送
在发行版中,文件也可以作为二进制文件共享。截至2020年,每个此类文件的文档大小限制为2gb。
我们不限制发行版中二进制文件的总大小或用于交付它们的带宽。但是,每个单独的文件必须小于2gb。
检查使用尺寸
您直接拥有管理员权限(但不通过团队)的每个回购的大小显示在https://github.com/settings/repositories。或者,git-sizer工具可以在本地估计回购大小。
绕过文件大小限制
如果它适用于您的应用程序,可以使用tar等工具将一个大文件分割为90 MB的部分。
我建议不要使用Git LFS,因为GitHub强加的免费计划限制有限。
文件数量
回购中没有已确定的最大文件数量限制。2015年的一篇文章指出,GitHub回购中有170万个文件。请注意,拥有100万个文件将限制每个文件的平均最大值为5 KB(根据5 GB的软限制)或100 KB(根据假定的100 GB的硬限制)。
如何写作
为了能够成功地使用git推送大量字节,您很可能首先必须配置http。postBuffer的值足够大,并且有足够的可用系统内存。
除了使用git之外,另一种以编程方式编写不太更新的文件的方法是使用个人访问令牌使用v3 REST或v4 GraphQL api。这样做时,请确保没有超过特定于用户的每小时速度限制。与git不同的是,这个API似乎不允许提交增量或差异。
加密
在使用git时,可以加密整个回购的内容或只是一些文件,但有几个注意事项。
比较
对于Bitbucket,考虑一下这个答案。如果可行,我个人会推送到GitHub和Bitbucket,提供隐式备份。
到2022年,GitLab(不是GitHub)似乎要将其免费配额从每次回购的10gb降低到所有回购的5gb !您可以看到GitLab帐户中使用的总空间。
文件和存储库大小限制
为了确保用户的良好性能,我们建议每个存储库保持在1GB以下。保持存储库小可以确保我们的服务器速度快,下载也快。如果你的存储库确实超过1GB,你可能会收到来自GitHub支持的电子邮件,要求你减少它。
存储库的硬大小限制为100GB。如果达到75GB,下次您执行更改时,将在终端中收到Git发出的警告。此外,我们对存储库中的单个文件设置了严格的最大大小限制为100 MB
来源:Github -> what-is-my-disk-quota
注意:如果您通过浏览器将文件添加到存储库,则该文件不能超过25mb
限制增加。 这是每个文件500Mb。 没有存储库大小限制。 无限的存储库。 这些限制仅适用于免费帐户。 如果你的支付限额真的提高了。
无论如何,如果github适合你的项目,你不应该太在意限制,github的真正目的,即使微软收购了它是为了得到你的源代码。 不管你怎么想,它们确实为团队和开源代码提供了有趣的工具。对于那些真正需要安全保障的公司,我会非常关心把文件托管在“别人的电脑”上。