项目与文档
自动保存、版本、云同步与冲突:你的工作此刻在哪里,以及如何找回一个旧的状态。
aukimi 保存两种东西,二者的区别决定了你之后能拿它们做什么。
| Project(项目) | Document(文档) | |
|---|---|---|
| 保存的内容 | 每一个工作室的状态 | 单个工作室的文件 |
| 创建方式 | 在仪表盘上 New project | 直接从某个模块开始 |
| 跨工作室传递 | 可以 | 不可以 |
| 云端保存、分享、协作 | 可以 | 不可以,需要先 Upload to Cloud |
| 可转换 | , | Convert to Project |
项目是常规的工作单位。文档是"我只是想画点东西"的快车道,之后可以升级成项目而不丢失任何内容。反过来,把一个项目变回文档,则是刻意不提供的。
自动保存#
默认开启,间隔可以在设置 → 常规中配置。你的工作会写入 IndexedDB,以 localStorage 作为后备,并按项目隔离:一个工作室在某个项目里的状态,永远不会渗入另一个项目。
Ctrl+S 会立即强制保存一次。这通常没有必要,它存在只是为了满足那个下意识的动作。
本地存储空间有限,而且由浏览器掌管。配额快用完时,aukimi 会提醒你,而不是让保存悄悄失败。清除 aukimi.com 的站点数据,会抹掉每一个从未上传过的项目,且无法撤销。
版本#
每个项目都保留一份版本历史,可以从仪表盘上它的卡片进入。
- Autosaved(自动保存) 版本是你工作过程中自动产生的。
- Saved(已保存) 版本是你主动要求的那些,即 Save a version。如果自上一个版本以来什么都没变,aukimi 会告诉你,而不是存一份重复的。
- Before a restore(还原前) 版本会在你还原某个内容的那一刻自动写入,所以一次还原本身也是可以撤销的。
版本保存在浏览器里,每个项目只保留最新的 N 个。Pin(固定) 一个版本可以让它不受这个数量限制,而且,在开启云端保存的情况下,还会把它复制到云端。在还原之前,你可以预览某个版本,或者选出两个版本并排比较。
云端保存#
默认关闭,除非你主动打开它(设置 → Cloud Save),而且需要订阅。打开之后,只要有变动,aukimi 大约每 60 秒就会上传一次项目。
会被传输的内容,是每个有状态的工作室各自的一个文件:.engine、.ink、
.sculpt3d、.p3d、.daw 等等,完整列表见
导入与导出;再加上项目的二进制素材,以及在工作室支持的情况下,它的撤销历史。
仪表盘会给每个项目标注它存放在哪里:本机、云端、与我共享。
冲突#
Changed elsewhere, needs a decision(在别处发生了变化,需要你做决定)。
出现这个状态,说明云端副本自你上次同步以来发生了变化:可能来自另一台设备,也可能来自另一个标签页。aukimi 不会替你猜。它只给出两个明确的答案:
- Keep local(overwrite cloud):保留本地版本,你当前的工作胜出;云端版本会被替换。
- Keep cloud(discard local):保留云端版本,云端版本胜出;你本地的改动会丢失。
不存在自动合并,这是刻意的:一个合并到一半的雕刻,或者一条合并到一半的时间轴,比两个版本里任何一个完整的版本都更糟。如果两边都很重要,先导出本地这一份(File → Export,或者导入与导出里各工作室自己的导出功能),然后再取用云端那一份。
修改历史#
这与版本是分开的,而且是可读的:每个项目都保留一份改动日志,记录发生了什么以及何时发生,按天分组,位于仪表盘上的 History 里。它回答的是"我周二做了什么",而不是"把周二的文件还给我",后者才是版本要解决的问题。
离线#
没有网络连接时应用照常工作。自动保存是本地的,所以不会丢失任何东西;同步指示条会显示离线,云端副本停留在你上一次同步的状态。离线时创建的新项目会被相应标注,等你恢复连接后再上传。