合并冲突怎么处理 —— 两边都改了卡片时怎么办
为什么会有合并冲突
正常情况下 AnkiWeb 同步是"增量合并"——两边只同步各自新增的卡片,已有卡片的变更不会冲突。但如果满足以下条件之一,自动合并就会失败:
条件 1:两边同时大量编辑了同一张卡片
比如你在桌面版上改了一张卡片的正面字段,同时在手机上也改了同一张的反面字段——按时间戳合并 Anki 会尝试保留两边的改动,但在某些版本下判断逻辑有缺陷,就会判定冲突。
条件 2:一边删除了卡片、另一边还在改
比如你在手机上删了一张笔记,同时在桌面版上对它做了编辑——Anki 无法判断是该保留删除还是保留编辑。
条件 3:长时间不同步
如果某台设备几周没同步、期间大量操作,而云端也在变——时间戳逻辑可能判定冲突。
冲突对话框长什么样
同步遇到冲突时,AnkiDroid 会弹出一个对话框:
╔═══════════════════════════════════╗
║ 合并冲突 ║
║ ║
║ 手机上的数据和 AnkiWeb 上的数据 ║
║ 无法自动合并。请选择一个方向: ║
║ ║
║ [保留手机] 上传手机数据到云端 ║
║ ║
║ [保留云端] 从云端下载数据到手机 ║
╚═══════════════════════════════════╝
选方向的原则
选哪个 = 哪个会被完全保留,另一个会被覆盖。 选之前先想清楚两边各有什么你想保留的东西。
选"保留手机"(上传到云端)
- 手机上的所有牌组、卡片、学习历史 → 推到 AnkiWeb,覆盖云端版本
- 云端独有的内容 → 会被覆盖丢失
- 适合场景:
- 手机是你主要的制作端,最近在手机上做了很多编辑
- 你确认云端版本没有比手机更多的新内容
- 或者 AnkiWeb 上有问题,你想把手机作为真相源
选"保留云端"(从云端下载)
- AnkiWeb 上的所有牌组、卡片、学习历史 → 拉到手机,覆盖手机版本
- 手机独有的内容 → 会被覆盖丢失
- 适合场景:
- 桌面版最近做了大量编辑(同步到 AnkiWeb 了),手机上的牌组是旧的
- 手机之前的同步就有问题,AnkiWeb 的数据更可信
- 或者手机数据乱了,想从云端恢复干净版本
选完后立刻做什么
不管选哪个方向,选完之后立即做这两件事:
1. 立即再同步一次
选完方向后同步不会自动继续,需要手动再点一次循环箭头按钮。这次应该能顺利同步完成。
2. 检查数据完整性
同步完成后快速检查:
- 牌组列表里的主要牌组都在
- 打开几个常用牌组,三色计数看起来正常
- 进几张卡片看看内容有没有丢失
防止冲突的日常习惯
- 定期同步:至少每天同步一次,不要让任何一台设备几周不同步
- 以一台设备为主做编辑:比如桌面版主要做内容制作、手机主要用来复习——两边同时编辑同一张卡的概率就低了
- 冲突前备份:如果感觉同步不太对劲(比如图标一直转圈),先在各端手动导出备份,再处理同步问题
如果选完方向后发现丢了重要数据
- 如果选了"保留手机"但发现云端独有的东西没了 → 去桌面版看看有没有备份(桌面版 Anki 默认每次启动都自动备份)
- 如果选了"保留云端"但发现手机上独有的东西没了 → AnkiDroid 有自动备份,活动栏更多菜单 → 恢复备份,可以按时间点回溯
- 实在不行 → 看 AnkiWeb 的回收站或提交 support ticket