GitHub 免费图床实测:PicGo + jsDelivr 搭建全流程(附两年使用经验与限制说明)

说明:本文是我用 GitHub 当图床两年多的经验总结,初版写于 2026 年 1 月。GitHub 与 jsDelivr 的政策可能调整,文中的限制数字以官方文档实时说明为准。

先说风险:用 GitHub 当图床会被封号吗?

这是问得最多的问题,先给结论:在合理范围内使用,我两年多没遇到问题。

网传”单个仓库超过 1GB 会被人工审核、删库甚至封号”,实际情况是:GitHub 官方建议单个仓库保持在 1GB 以内,超了可能会收到官方的提醒邮件(礼貌地请你瘦身),而不是不通知直接删库。除非情节恶劣,官方一般会先邮件通知。

我的看法:那些说因当图床被封号的案例,除了滥用,大概率还违反了 GitHub 的其他规定(比如作弊获取学生权益、仓库里有违禁内容等)。官方条款在这里,请自行查阅:GitHub 社区行为准则。

另外一点要提前说清楚:jsDelivr 官方将其定位为面向开源项目的免费 CDN,把个人图床流量跑在上面,属于官方默许、但不做承诺的用法。两年用下来没被限过,但如果哪天被限流,不要意外——这不是你”应得”的 SLA。

方案亮点

  1. 免费、可靠:GitHub 背靠微软,不会轻易跑路宕机。
  2. 国内可访问:配置 jsDelivr 加速域名后,国内访问速度可用。
  3. 仓库数量无限制:免费账号可创建无限个公开/私有仓库(GitHub 免费权益)。当图床必须用公开仓库,私有仓库上传后无法直接公开访问。
  4. 单仓库容量:官方建议保持在 1GB 以内(官方文档)。快满 1GB 时就新建一个仓库轮换,我就是这么做的。
  5. 支持多种文件:图片、视频、音频、文本都可传,但受单文件大小限制(见下文)。

步骤 1:准备工作

  1. 注册并登录一个 GitHub 账号(GitHub 官网)。
  2. 下载 PicGo 客户端(支持 macOS / Windows / Linux,建议下载稳定版):PicGo 官方下载。

步骤 2:新建一个公开仓库

在 GitHub 上新建仓库,可见性选 Public(公开),仓库名随意(比如 my-image-host)。私有仓库的图床链接外人打不开,这一步别选错。

步骤 3:生成 Personal Access Token

PicGo 上传需要调用 GitHub API,得先生成一个 Token:

  1. GitHub 右上角头像 → Settings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token。
  2. 权限勾选 repo(完整仓库读写权限)。
  3. 生成后立刻复制保存,这个字符串只显示一次。

步骤 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
![](https://你的图片链接)

2. 视频(Markdown 无原生语法,用 HTML):

1
2
3
<video controls style="width: 320px; height: 180px;">
<source src="替换视频链接" type="video/mp4">
</video>

宽高可改,320×180 是横屏,180×320 是竖屏,建议用 16:9 的倍数。

3. 音频(同样用 HTML):

1
2
3
<audio controls>
<source src="替换音频链接" type="audio/mpeg">
</audio>

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 是目前个人用成本最低的图床方案之一,但它建立在”官方默许”之上——当作主力图床可以,别当作唯一依赖。