跳转至

笔记本同步

由于笔记本就是一个装着纯文件的普通目录,你可以用不止一种方式在多台机器之间保持它同步。VNote 为捆绑笔记本提供了内置的 Git 同步;而且因为一切都是纯文本,你同样可以依赖任何你早已信任的文件夹同步服务。无论哪种方式,你都始终完全掌控自己的数据。这一理念背后的思考参见为什么选择 VNote

内置 Git 同步

捆绑笔记本可以通过 Git 自我同步,无需离开 VNote。VNote 会为你处理克隆、提交、拉取和推送,并按笔记本存储远端凭据。

在新建笔记本时启用同步

新建笔记本对话框(捆绑类型)中,将同步方式(Sync method)设为 Git,然后点击配置...(Configure...)在创建笔记本之前填写远端信息:

  • 远端 URL(Remote URL)——一个 HTTPS 的 git 地址(例如 https://github.com/user/repo.git)或 file:// 路径。
  • 个人访问令牌(Personal Access Token,PAT)——用于向远端进行身份验证。对于 GitHub,这是一个具有 repo 权限范围的令牌。

从远端克隆现有笔记本

要接入一个已经存在于远端的笔记本,使用打开笔记本(Open Notebook)并选择远端 URL(Remote URL)

  1. 输入远端 URL,并可选填个人访问令牌。留空 PAT 则打开笔记本但暂不同步。
  2. 选择一个本地根文件夹用于克隆(该文件夹必须尚不存在,或为空)。
  3. VNote 克隆该仓库并将其作为笔记本打开。

边写作边同步

每个捆绑笔记本会在笔记本标题栏显示一个同步(Sync)按钮:

  • 点击立即同步(Sync Now)即可立刻同步。
  • 同步信息(Sync Info)菜单项会打开一个对话框,你可以在其中查看同步状态、添加或更新个人访问令牌,以及重新配置远端。

你也可以在设置 → 同步中启用自动同步自动同步间隔(Auto-sync interval)控制后台同步的最短触发周期(设为 0 / 立即 则在每次更改时同步)。

解决冲突

如果同一个文件在两台机器上都发生了更改,VNote 会打开解决同步冲突(Resolve Sync Conflicts)对话框,列出受影响的文件,让你逐一选择如何解决。简单的情况会自动协调;只有在确实需要你决定时,对话框才会出现。

文件夹同步服务

如果你不想使用 Git——或者你同步的是原始笔记本——可以改用文件夹同步服务。捆绑笔记本完全包含在它的笔记本根文件夹中:笔记、图片、附件和它的索引全都在其中。原始笔记本就只是那个文件夹本身;VNote 会把该笔记本的元数据和缓存保存在应用数据文件夹中,因此同步该文件夹能把你的文件带过去,而每台机器各自保留对该笔记本的记录。无论哪种情况,你同步的都是这个文件夹。

一般模式如下:

  1. 把笔记本根文件夹放进由同步工具管理的目录中。
  2. 在每台电脑上,把该文件夹打开为笔记本(参见导入与迁移)。
  3. 照常编辑;同步工具会在机器之间传播文件改动。

DropboxOneDriveNextcloudGoogle Drive 等服务,或任何文件夹同步工具,都能很好地工作。在每台机器上把笔记本放在被同步的目录中,让服务去搬运文件。

编辑前让同步先完成

切换机器时,先给同步客户端一点时间完成下载,再开始编辑。在改动同步完成之前,同时在两台机器上编辑同一个笔记本,正是导致冲突的原因。

避免与解决冲突

  • 会话前后都同步。 开始前确保笔记本是最新的,离开前让改动上传完成。
  • 不要在两台机器上同时编辑同一篇笔记。 当同一个文件在同步前于两处被改动,就会发生冲突。
  • 若使用文件夹同步服务时发生冲突, 它通常会保留两个版本(例如一个「冲突副本」文件)。在 VNote 中打开两者,手动合并内容,然后删除多余的文件。使用内置 Git 同步时,改用解决同步冲突对话框即可。

哪些内容会被同步

笔记本根文件夹之下的一切都应当一起同步,其中包括捆绑笔记本的索引和配置。应用级别的设置单独保存在 VNote 的配置文件夹中,不属于任何笔记本——只有当你也想在机器间携带应用设置时,才需要同步它们。