github仓库容量限制包括:普通仓库建议≤10gb(压缩后),私有库限500mb;文件推送超100mb被拒,网页上传限25mb;单仓最多5000分支,目录条目≤3000,嵌套≤50层;单次推送≤2gb,git对象≤100mb。

如果您尝试在 GitHub 上托管代码,但发现推送失败或收到容量警告,则可能是由于仓库超出了平台设定的大小限制。以下是关于 GitHub 仓库容量与限制的具体说明:
一、普通仓库(非 Git LFS)磁盘大小限制
GitHub 对仓库的物理存储大小设定了明确建议与隐性约束,以保障克隆、拉取、浏览等操作的响应性能。超过建议值将导致操作延迟、界面卡顿,甚至触发平台干预。
1、磁盘上大小建议上限为 10 GB,该数值指 .git 文件夹压缩后的实际占用空间。
2、单个仓库若持续接近或超过 5 GB,GitHub 可能向维护者发送优化提示邮件。
3、公共仓库无账户级总容量硬性限制,但强烈建议单个公共仓库不超过 1 GB,以确保可维护性与协作效率。
4、私有仓库受更严格约束:每个私有仓库最大 500 MB,且该限制不可跨仓库共享或转移。
二、文件级大小限制
单个文件的尺寸直接影响 Git 操作稳定性与用户体验,GitHub 对不同上传路径设定了差异化阈值。
1、通过 Git 命令行推送时,若文件大于 50 MiB,系统将发出警告;若大于 100 MiB,推送将被强制拒绝。
2、通过 GitHub 网页界面上传时,文件不得超过 25 MiB,超出即无法提交。
3、Git LFS 托管的文件不受上述限制,但需单独计入 LFS 配额:免费账户每月 10 GiB 存储 + 10 GiB 带宽。
三、分支与目录结构限制
仓库逻辑结构的复杂度同样影响性能,GitHub 对分支数量和目录层级施加了可量化的约束。
1、单个仓库最多支持 5,000 个分支,超出后新分支创建可能失败或引发同步延迟。
2、单个目录内文件与子目录条目总数不得超过 3,000 个,否则树遍历操作显著变慢。
3、目录嵌套深度上限为 50 层,过深路径会拖慢历史浏览与 diff 渲染。
四、推送与读取操作限制
高频或大体积的数据传输行为受到速率与频次管控,防止资源滥用与服务降级。
1、单次推送内容总大小不得超过 2 GB,该限制为硬性强制值。
2、单个 Git 对象(如 blob、tree、commit)最大允许 100 MB,建议控制在 1 MB 以内以保障兼容性。
3、每秒允许的 Git 读取操作(如 clone、fetch)上限为 15 次/每仓库;自动化流程(如 CI)需采用浅克隆或缓存策略规避限流。
4、推送频率建议不超过 6 次/分钟/每仓库,突发密集推送可能触发临时节流。
五、GitHub Pages 与特殊用途仓库限制
面向静态站点发布的 GitHub Pages 仓库,其源码仓库同样适用独立容量规范,以保障渲染服务稳定性。
1、GitHub Pages 源仓库建议上限为 1 GB,该限制不与主仓库配额合并计算。
2、Pages 站点生成过程中,若引用的 Markdown 或 Mermaid 文件超过 2 MB,预览可能超时并退化为纯文本显示。
3、拉取请求中单文件差异不得超过 500 KB 原始数据,总差异不得超过 1 MB 或 20,000 行。










