[[发布服务简介|Obsidian Publish]] 提供了一个无界面客户端,可以在不使用桌面应用的情况下发布仓库。这对于 CI 流水线和自动化工作流非常有用。你可以按计划或作为构建流水线的一部分发布最新更改。 安装 [[Obsidian Headless]] **(公开测试版)**,即可通过命令行与 [[发布服务简介|Obsidian Publish]] 交互,而无需使用 Obsidian 桌面应用。 ## 快速开始 安装 [[Obsidian Headless]] **(公开测试版)**: ```shell npm install -g obsidian-headless ``` 你必须拥有一个有效的 [[发布服务简介|Obsidian Publish 订阅]]。 ```shell # 登录 ob login # 列出你的发布网站 ob publish-list-sites # 将本地仓库连接到发布网站 cd ~/vaults/my-vault ob publish-setup --site "my-site" # 预览更改(不实际发布) ob publish --dry-run # 发布更改 ob publish ``` ## 命令 ### `ob publish-list-sites` 列出你的账户下所有可用的发布网站。 ### `ob publish-create-site` 创建一个新的发布网站。 ``` ob publish-create-site --slug <slug> ``` | 选项 | 说明 | | --- | --- | | `--slug` | 网站的 URL 标识符(例如 `my-notes` 会创建 `publish.obsidian.md/my-notes`) | ### `ob publish-setup` 将本地仓库连接到发布网站。 ``` ob publish-setup [--site <id-or-slug>] [--path <local-path>] ``` | 选项 | 说明 | | --- | --- | | `--site` | 网站 ID 或 slug | | `--path` | 本地仓库路径(默认:当前目录) | ### `ob publish` 将仓库的更改发布到你的网站。默认情况下,只有前置元数据中包含 `publish: true` 的文件会被包含。 ``` ob publish [--path <local-path>] [--all] [--dry-run] [--yes] ``` | 选项 | 说明 | | --- | --- | | `--path` | 本地仓库路径(默认:当前目录) | | `--all` | 包含所有文件,而不仅是带有 publish 标记的文件 | | `--dry-run` | 显示更改但不实际发布 | | `--yes` | 发布时无需确认提示 | ### `ob publish-config` 查看或更改仓库的包含/排除文件夹设置。不带选项运行可显示当前配置。 ``` ob publish-config [--path <local-path>] [options] ``` | 选项 | 说明 | | --- | --- | | `--path` | 本地仓库路径(默认:当前目录) | | `--includes` | 要包含的文件夹,以逗号分隔(空字符串表示清除) | | `--excludes` | 要排除的文件夹,以逗号分隔(空字符串表示清除) | ### `ob publish-site-options` 查看或更新网站范围的显示和导航设置。不带选项运行可显示当前设置。 ``` ob publish-site-options [--path <local-path>] [options] ``` | 选项 | 说明 | | --- | --- | | `--path` | 本地仓库路径(默认:当前目录) | | `--site-name` | 网站名称 | | `--index-file` | 首页文件路径 | | `--logo` | 网站标志文件路径(空字符串表示清除) | | `--show-navigation` | 显示文件列表侧边栏 | | `--show-graph` | 显示局部关系图 | | `--show-outline` | 显示目录 | | `--show-search` | 显示搜索 | | `--show-backlinks` | 显示反向链接 | | `--show-hover-preview` | 页面预览 | | `--show-theme-toggle` | 显示主题切换 | | `--default-theme` | 默认主题:`light` 或 `dark` | | `--readable-line-length` | 限制行宽 | | `--strict-line-breaks` | 严格换行 | | `--hide-title` | 隐藏行内标题 | | `--sliding-window` | 滑动窗口模式 | | `--nav-order` | 导航排序,以逗号分隔的路径(空字符串表示清除) | | `--nav-hidden` | 隐藏的导航项目,以逗号分隔的路径(空字符串表示清除) | ### `ob publish-unlink` 断开仓库与发布网站的连接。 ``` ob publish-unlink [--path <local-path>] ```