如何从 GitHub 仓库托管文档
你在 GitHub 仓库中有 Markdown 文件。你希望它们位于一个真实的网址上——可搜索、具有品牌特色、能被 Google 编入索引,并且适合在移动设备上阅读。仓库是事实来源;网站则是呈现界面。
实现这一目标有三种常见方式。本教程将逐一介绍每种方式,包括实际设置步骤和需要权衡的因素。
你已经有什么了?#
典型的文档仓库如下所示:
my-product/
├── README.md
├── docs/
│ ├── getting-started.md
│ ├── api-reference.md
│ └── guides/
│ └── webhooks.md
你希望将其变成一个网站。现实可行的选项有三个:
- GitHub Pages — 免费、原始、手动
- Docusaurus — 代码量大、自托管,可自定义到主题组件
- Docsbook — 即时、托管、粘贴 URL 即可
选项 1:使用 Jekyll 的 GitHub Pages#
GitHub Pages 免费从仓库分支提供静态网站。借助 _config.yml,它会识别 Jekyll 并渲染你的 Markdown。
步骤#
- 在仓库根目录中创建
_config.yml:theme: jekyll-theme-minimal title: My Product Docs - 转到仓库中的设置 → 页面
- 将源设置为
main分支、/docs文件夹 - 等待几分钟 — 您的网站已在
username.github.io/repo上线
您将获得#
- 可用的网址
- 基本主题
- 免费托管
缺少什么#
- 无搜索功能
- 没有导航侧边栏,除非手动配置
- 无分析功能
- Jekyll 主题看起来像 2014 年的
- 可以使用自定义域名,但 DNS 和 SSL 需要自行设置
- 开箱即用不提供 AI 功能、翻译或 SEO
适合内部 wiki。如果你的文档是面向客户的产品界面,则不合适。
选项 2:Docusaurus#
Docusaurus 是 Meta 的开源文档框架。它基于 React,并且可以对各个组件进行主题定制——前提是你愿意维护它。
步骤#
- 在本地安装 Node.js 18+
- 搭建项目:
npx create-docusaurus@latest my-docs classic cd my-docs - 将现有的 Markdown 文件移入 Docusaurus 创建的
docs/文件夹 - 编辑
docusaurus.config.js——设置站点标题、基础 URL、侧边栏结构、主题颜色和导航栏项目 - 编辑
sidebars.js——声明文件的显示顺序 - 运行
npm run start以在本地预览 - 构建:
npm run build - 部署到 Vercel、Netlify 或 GitHub Pages——设置部署流水线、环境变量和构建命令
- 配置自定义域名——设置 DNS,等待 SSL 配置完成
- 添加分析功能——手动集成 Plausible、GA 或你选择的工具
- 添加搜索——购买 Algolia DocSearch(或自行托管 Meilisearch)
- 每次产品发布时更新所有内容
您将获得#
- 对设计和结构的完全控制
- 可扩展的 React 代码库
- 长期活跃的开源社区
缺少什么#
- 时间。实际搭建需要 2–3 天,之后每次依赖更新都需要持续维护
- AI 搜索、AI 聊天、AI 翻译——均不包含
- 配置中的每一行都由你负责
如果文档本身就是由你的团队负责并发布的产品,这很合适。如果你只是想让文档上线,这会很痛苦。
选项 3:Docsbook#
Docsbook 是一个托管平台,可将 GitHub 仓库即时转换为文档网站。无需 CI/CD、配置文件或构建流水线。
步骤#
- 前往 docsbook.io
- 使用 GitHub 登录
- 粘贴你的仓库 URL(例如
github.com/your-org/your-repo) - 完成 — 你的网站已上线于
docsbook.io/your-org/your-repo
就是这样。每次将 git push 推送到 main,网站都会自动更新。
开箱即得#
- AI 聊天机器人,根据您的文档进行训练,让用户获得答案而不是搜索结果
- AI 翻译为 15 种语言,每种语言都会被 Google 单独编入索引
- 自定义域名,例如
docs.yourcompany.com,并提供免费 SSL - SEO — 元标签、站点地图、OpenGraph、JSON-LD,全部自动生成
llms.txt,为 AI 搜索引擎(ChatGPT、Perplexity、Claude)生成- 分析 — 页面浏览量、热门页面、引荐来源、用户提出的 AI 问题
- 品牌自定义 — 徽标、颜色、字体、主题,无需修改代码
- MCP 服务器,让 AI 代理能够以编程方式读取和管理您的文档
缺少什么#
- 你不拥有渲染流水线 — 但你的 Markdown 保留在自己的仓库中,因此不会被锁定。随时可以取消,文档也会随你一起带走。
你应该选择哪个选项?#
| 使用场景 | 选择 |
|---|---|
| 个人项目、内部 wiki | GitHub Pages |
| 你有前端团队,并且有自己的设计理念 | Docusaurus |
| 你希望文档今天下午就能上线,并且做好 SEO | Docsbook |
坦率地说:如果文档不是你的产品,就不要构建文档平台。使用现成的平台。
试用#
过去,从 GitHub 托管文档意味着需要一个配置仓库、一个部署流水线,以及定期清理。粘贴您的仓库 URL,网站即可上线;Markdown 始终不会离开仓库,因此迁移过程可逆。
后续步骤#
- 将 README.md 转换为文档网站 — 选项 3 的精简版本
- 文档自定义域名 — 将完成的网站迁移到
docs.yourcompany.com - 免费文档托管对比 — 将相同的三种路径与另外三种进行比较
- 文档 SEO 指南 — 让已发布的网站更容易被找到