本页介绍 Nuxt Studio 如何在浏览器(您的生产网站)和 GitHub 仓库之间保持内容同步。
自托管的 Nuxt Studio 模块使用三层存储系统:
当应用在浏览器加载时,Nuxt Content v3 会从服务器下载 SQLite 数据库转储文件并初始化本地 WASM 数据库。:br
该本地数据库包含您已部署分支中 content/ 目录的所有内容。
Studio 使用 unstorage 维护一个独立的草稿层,后端存储为 IndexedDB。:br
当您编辑内容时,变更会被存储为该层中的草稿。:br
每次 Studio 应用加载时,这些草稿会与 SQLite 数据库合并,以渲染您生产网站的草稿版。
发布时,Studio 通过 GitHub API 直接将您的草稿更改提交到 GitHub 仓库。:br
随后您的 CI/CD 管道会自动重建并重新部署您的网站。
Nuxt Content 下载构建过程中生成的 SQLite 数据库转储文件。:br
该文件包含您 content/ 目录的所有解析内容。
Studio 检查 IndexedDB 是否存在之前会话的草稿,将其加载进 SQLite 数据库。
Studio 刷新网站预览,让您直接在生产网站上查看最新草稿和编辑内容。
当您在 Studio 中修改内容时:
变更会立即以状态为 created、modified 或 deleted 的草稿项目形式保存至 IndexedDB。
本地 SQLite 数据库同步更新草稿内容,实现即时视觉预览。
Studio 会将您的草稿内容与 GitHub 上的最新版本进行比较,以检测可能的冲突。
发生冲突的情况包括:
当您发布编辑内容时: