思源笔记同步机制
type
status
date
slug
summary
tags
category
icon
password
网址
思源笔记跨设备同步
在思源笔记中,跨设备同步的核心内容是
repo
目录中的数据。这个目录内部记录了文档的变更日志和增量数据,它是版本控制与同步的基础。repo
中的数据是本地生成的同步日志和内容快照。
- 这些数据在同步前会使用 AES 对称加密算法进行加密,保障用户数据的隐私安全。
- 思源使用本地生成的密钥进行加密和解密,密钥不会上传云端,即便服务器被攻击,数据也无法被解读。
✅ 所以:真正上传至云端的不是 .sy 文件本身,而是 repo 中加密后的变更内容。
.sy
文件说明- 每篇笔记对应一个
.sy
后缀的 JSON 文件,位于各笔记本文件夹中。
.sy
文件是明文存储在本地磁盘上的,不会直接参与云端同步。
- 当文档内容变动时,系统会把变动记录到
repo
,并作为同步内容发送。
文件系统结构
- 文件系统上工作空间下的结构:
conf.json
该工作空间的全局配置,例如界面语言、编辑器行为、是否开启同步、最近打开笔记等偏好设定。assets
用于保存所有插入的资源文件emojis
用于保存自定义图标表情图片snippets
用于保存代码片段storage
用于保存查询条件、布局和闪卡数据等templates
用于保存模板片段widgets
用于保存挂件plugins
用于保存插件public
用于保存公开的数据- 其余文件夹就是用户自己创建的笔记本文件夹(例如:20210808180117-czj9bvb),笔记本文件夹下
.sy
后缀的文件用于保存文档数据,数据格式为 JSON siyuan.db
临时性的 SQLite 数据库文件,主要用于运行时的数据缓存与中间处理。
conf
用于保存工作空间配置
appearance
保存自定义主题样式(如 custom.css)以及图标、字体等外观资源
corrupted
用于保存已经损坏的数据文件
data
用于保存数据
history
用于保存文件历史
repo
用于存储同步日志、增量变更记录,是实现版本控制和同步的关键组件
temp
用于保存运行时所需的临时文件
.lock
内核进程启动后会创建该文件,用于锁定工作空间
上一篇
知识管理
下一篇
SQLite 数据库表与字段
Loading...