GitHub 免费图床实测:PicGo + jsDelivr 搭建全流程(附两年使用经验与限制说明)
GitHub 免费图床实测:PicGo + jsDelivr 搭建全流程(附两年使用经验与限制说明)
数码解码说明:本文是我用 GitHub 当图床两年多的经验总结,初版写于 2026 年 1 月。GitHub 与 jsDelivr 的政策可能调整,文中的限制数字以官方文档实时说明为准。
先说风险:用 GitHub 当图床会被封号吗?
这是问得最多的问题,先给结论:在合理范围内使用,我两年多没遇到问题。
网传”单个仓库超过 1GB 会被人工审核、删库甚至封号”,实际情况是:GitHub 官方建议单个仓库保持在 1GB 以内,超了可能会收到官方的提醒邮件(礼貌地请你瘦身),而不是不通知直接删库。除非情节恶劣,官方一般会先邮件通知。
我的看法:那些说因当图床被封号的案例,除了滥用,大概率还违反了 GitHub 的其他规定(比如作弊获取学生权益、仓库里有违禁内容等)。官方条款在这里,请自行查阅:GitHub 社区行为准则。
另外一点要提前说清楚:jsDelivr 官方将其定位为面向开源项目的免费 CDN,把个人图床流量跑在上面,属于官方默许、但不做承诺的用法。两年用下来没被限过,但如果哪天被限流,不要意外——这不是你”应得”的 SLA。
方案亮点
- 免费、可靠:GitHub 背靠微软,不会轻易跑路宕机。
- 国内可访问:配置 jsDelivr 加速域名后,国内访问速度可用。
- 仓库数量无限制:免费账号可创建无限个公开/私有仓库(GitHub 免费权益)。当图床必须用公开仓库,私有仓库上传后无法直接公开访问。
- 单仓库容量:官方建议保持在 1GB 以内(官方文档)。快满 1GB 时就新建一个仓库轮换,我就是这么做的。
- 支持多种文件:图片、视频、音频、文本都可传,但受单文件大小限制(见下文)。
步骤 1:准备工作
- 注册并登录一个 GitHub 账号(GitHub 官网)。
- 下载 PicGo 客户端(支持 macOS / Windows / Linux,建议下载稳定版):PicGo 官方下载。
步骤 2:新建一个公开仓库
在 GitHub 上新建仓库,可见性选 Public(公开),仓库名随意(比如 my-image-host)。私有仓库的图床链接外人打不开,这一步别选错。
步骤 3:生成 Personal Access Token
PicGo 上传需要调用 GitHub API,得先生成一个 Token:
- GitHub 右上角头像 → Settings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token。
- 权限勾选
repo(完整仓库读写权限)。 - 生成后立刻复制保存,这个字符串只显示一次。
步骤 4:配置 PicGo 的 GitHub 图床
打开 PicGo → 图床设置 → GitHub,按下表填写:
| 配置项 | 填写内容 |
|---|---|
| 仓库名 | 你的用户名/仓库名(如 hallteacher/my-image-host) |
| 分支名 | main(与你仓库的默认分支一致) |
| Token | 步骤 3 生成的字符串 |
| 存储路径 | 可空,或填 img/ 这样的子目录 |
| 自定义域名 | https://cdn.jsdelivr.net/gh/你的用户名/仓库名@分支 |
自定义域名就是国内加速的关键:填了之后,PicGo 返回的图片链接会自动走 jsDelivr 加速,不用你手动拼接。
步骤 5:上传并使用
配置完成后,直接把图片拖进 PicGo 上传,剪贴板里就是可用的图床链接。注意 jsDelivr 的单文件加速上限是 20MB:超过 20MB 的文件即使传上了 GitHub,走这个加速域名也会报错(”File size exceeded the configured limit of 20 MB”),图片/视频请控制在 20MB 以内。
附录 A:图床链接的嵌入方法
下面是标准写法,直接复制到支持 Markdown 的编辑器(如 Typora)里用:
0. 文本链接
1 | [显示的文字](https://你的图床链接) |
1. 图片
1 |  |
2. 视频(Markdown 无原生语法,用 HTML):
1 | <video controls style="width: 320px; height: 180px;"> |
宽高可改,320×180 是横屏,180×320 是竖屏,建议用 16:9 的倍数。
3. 音频(同样用 HTML):
1 | <audio controls> |
4. 文本(用 iframe 嵌入):
1 | <iframe src="替换文本链接" width="600" height="400"></iframe> |
Markdown 语法可参考:Markdown 教程、在线 Markdown 编辑器。
附录 B:查看仓库已用空间
在浏览器地址栏输入:
1 | https://api.github.com/repos/你的用户名/仓库名 |
在返回的 JSON 里找 size 字段,单位是 KB(如 size: 1024 约等于 1MB)。快到 1GB 时就按步骤 2 新建仓库轮换。
限制与注意事项
- 仓库大小:官方建议单个仓库 1GB 以内,超了可能收到提醒邮件。图床文件夹大了之后
git pull会很慢,建议定期清理或分仓库管理。 - 单文件大小:GitHub 端超过 50MB 会警告,超过 100MB 直接上传失败(除非用 Git LFS);jsDelivr 加速端上限 20MB。三者取最小值:走加速域名的话,单文件别超 20MB。
- 私有仓库:技术上也能当图床用,但要涉及多个平台配置、买域名做托管,操作复杂,不适合新手。我测试成功过,但现阶段没条件做演示教程,感兴趣的可以自行搜索实践。
- “永久免费”的边界:GitHub 免费额度与 jsDelivr 的默许态度都可能变,别把核心业务的图片押在这上面。
总结:适合谁,不适合谁
| 场景 | 是否推荐 | 理由 |
|---|---|---|
| 个人博客、笔记的配图 | 推荐 | 免费、稳定,我用了两年多没出过问题 |
| 需要长期稳定、大流量的生产环境 | 不推荐 | 免费政策与加速域名的默许态度随时可能变 |
| 单文件经常超过 20MB | 不推荐 | jsDelivr 加速上限 20MB,超了走不通 |
一句话结论:GitHub + PicGo + jsDelivr 是目前个人用成本最低的图床方案之一,但它建立在”官方默许”之上——当作主力图床可以,别当作唯一依赖。




