ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

不依赖第三方服务器的多端同步:Mindwtr的4种同步方案(Dropbox、WebDAV、iCloud、自托管)一文讲透

不依赖第三方服务器的多端同步:Mindwtr的4种同步方案(Dropbox、WebDAV、iCloud、自托管)一文讲透 不依赖第三方服务器的多端同步Mindwtr的4种同步方案Dropbox、WebDAV、iCloud、自托管一文讲透【免费下载链接】MindwtrGet tasks and ideas out of your head. A free GTD to-do app for desktop and mobile. Works offline, no account needed项目地址: https://gitcode.com/gh_mirrors/mi/MindwtrMindwtr 是一款免费开源的 GTD 待办清单应用Getting Things Done 方法论支持桌面与移动端、完全离线可用、无需注册账号。它的多端同步采用「自带服务器」BYOS设计数据始终保存在你自己的设备与云空间里不经过 Mindwtr 官方服务器。本文将一次性讲透它提供的 4 种同步方案——Dropbox 同步、WebDAV 同步、iCloud 同步与自托管云同步帮助你快速选对并配置适合自己的那一种。4种同步方案怎么选在开始之前先用一张表帮你建立整体印象方案适用人群需要额外服务数据存放位置Dropbox 同步已使用 Dropbox 的普通用户Dropbox 账号你的 Dropbox 空间WebDAV 同步有 NAS群晖/威联通等的用户任意 WebDAV 服务你的 NAS / 服务器iCloud 同步苹果全家桶用户macOS/iOSApple ID你的 iCloud自托管云同步想要完全掌控数据的技术用户自建服务器 Docker你自己的服务器所有方案共享同一套核心合并逻辑同步行为在各端表现一致。这一点来自官方的架构决策记录docs/adr/0010-self-hosted-cloud-sync-server.md打开同步设置所有方案的统一入口无论是桌面端还是移动端同步配置都位于「设置 → 同步」中。桌面端的同步设置界面长这样在设置中后端选项包括off关闭同步、file文件夹共享、dropbox、webdav、selfhosted自托管云与cloudkitiCloud。这些定义可以在源码中看到SyncConfigurationSection.tsx方案一Dropbox 同步——最省事的跨设备方案如果你已经使用 Dropbox这是最省心的选择应用内点击「连接 Dropbox」授权后即可在专属文件夹中自动维护一个 Mindwtr 同步文件附件图片、文件与任务数据分别存放互不干扰支持 OAuth 回调与断线重连连接状态会在设置页实时显示已连接/未连接Dropbox 客户端的核心逻辑在 dropbox.tsOAuth 令牌管理见 dropbox-auth-tokens.ts。 小贴士Dropbox 同步是「支持构建」中提供的选项桌面端与移动端表现一致。方案二WebDAV 同步——NAS 用户的最佳拍档家里有群晖、威联通等 NASWebDAV 同步让你把任务数据直接放进自家柜子在同步设置中填入WebDAV 服务器地址如https://nas.example.com/webdav/mindwtr填入用户名与密码点击测试连接成功后即可启用配置项包括服务器地址、账号密码以及一个可选的「允许不安全 HTTP」开关仅建议在局域网内使用。地址格式校验与测试逻辑位于 sync-backend-io.ts。WebDAV 的最大优势是数据 100% 在自己手里不依赖任何云厂商的配额与政策。方案三iCloud 同步——苹果生态零配置体验在 macOS 与 iOS 设备上Mindwtr 支持通过 Apple 的 iCloud 云数据库CloudKit同步无需填写任何地址或账号登录同一 Apple ID 的设备之间自动同步附件使用独立的 iCloud 存储通道见 cloudkit-attachments.ts桌面端接入逻辑见 cloudkit-sync.ts如果你只在 Mac 和 iPhone/iPad 之间同步iCloud 是最接近「无感」的方案开机即同步、断网自动补同步。方案四自托管云同步——数据的完全掌控者对于希望「自己的数据只在自己的服务器上」的用户Mindwtr 内置了一个轻量级同步后端Cloud Server可以用 Docker 一键部署仓库自带完整的 Docker 编排文件docker/compose.yaml云服务的构建脚本见 docker/cloud/Dockerfile服务端职责极简用令牌Bearer Token认证 → 为每个令牌隔离一个命名空间 → 用与本地完全相同的核心合并逻辑处理快照与附件附件路径经过清洗防止路径穿越与可执行内容附件的同步模型说明见 docs/adr/0011-attachment-sync-model.md客户端侧只需在同步设置中选择「自托管云」填入服务器 URL 与令牌即可。服务端源码位于 apps/cloud/其定位与边界在 docs/adr/0010-self-hosted-cloud-sync-server.md 中有完整阐述。 注意自托管服务器面向个人使用定位为「HTTPS 后方的自托管端点」不是多租户 SaaSTLS、令牌保密、备份等运维工作由你负责。同步之后桌面与移动端的体验一致性无论选择哪种方案同步成功后你在任一设备的改动都会出现在其他设备上——收件箱、看板、项目视图完全一致同一份数据在 Android 平板上打开就是同样的内容常见机制离线优先与冲突合并离线优先所有数据先写入本地 SQLite同步是后台增量行为断网时不影响使用联网后自动补齐合并而非覆盖上传的快照会与远端状态用共享核心同步语义合并避免「最后一写覆盖」导致的数据丢失见 docs/adr/0003-revision-aware-sync.md删除也有「墓碑」被删除的任务会按保留策略留存墓碑记录避免多端来回同步时数据「复活」见 docs/adr/0005-tombstone-retention-policy.md自动同步应用在前后台切换、收到系统信号时会自动触发同步周期逻辑见 auto-sync-controller.ts 与 sync-cycle.ts总结一句话选方案你的情况推荐方案只想开箱即用、已有 DropboxDropbox 同步有 NAS数据必须在自己家WebDAV 同步只用苹果设备iCloud 同步技术控想要完全自治自托管云同步Docker 部署Mindwtr 的同步哲学可以概括为一句话数据在你手里服务器你自选合并规则只有一套。想动手体验的话可以克隆仓库查看各端实现git clone https://gitcode.com/gh_mirrors/mi/Mindwtr【免费下载链接】MindwtrGet tasks and ideas out of your head. A free GTD to-do app for desktop and mobile. Works offline, no account needed项目地址: https://gitcode.com/gh_mirrors/mi/Mindwtr创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进