两台设备同步问题

A 设备编辑完成后,点击左上角同步后退出,B 设备点击左上角还是无法同步,但是 B 设备会显示读取到了 A 设备的数据,点击同步会有同步动画,同步结果却还是 B 设备之前的数据,请问该怎么办呢,是否和经常出现内核链接失败有关?,AB 设备云端设置一样的,都如下图:

image.png

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 88250
    订阅者
    • A 设备编辑完以后点击一次立即同步,或者等自动同步,退出时也会自动同步一次
    • 设备 B 启动时会自动同步一次,如果没有成功(比如没有网络)那么启动完会有提示,这时可以手动执行一次同步
    2 回复
  • byxns
    订阅者 作者

    😭 就是这么做的,但是 B 设备还是没有同步的迹象,明明 B 设备左上角却可以读取到 A 设备的同步信息(精确到秒的那个)

    1 回复
  • 88250
    订阅者

    同步结果信息是本设备上的,不是其他设备的。

    你试下在 A 上面找个文档随便编辑一下或者创建个新文档编辑一下,触发同步以后再到 B 设备上点击同步。

  • byxns
    订阅者 作者

    就像帖子里的图那样,B 设备明明可以读取到云端的 2.6MB 的一个数据,我把 B 设备的本地文件清空了,再点击同步依然没有反应

    1 回复
  • 88250
    订阅者

    如何做“清空”操作的?

    1 回复
  • byxns
    订阅者 作者

    就随意删除了 B 的文档 因为 B 设备是 A 设备文档的先前版本,现在来看问题是,每次 A 编辑修改后,云端的文件会即时更新,且 B 设备也能读取到这一修改,但是就是无法把数据同步到 B 设备上,并且,还总是发生如下的过程,

    “检测到连续两次同步过程,为避免数据冲突.....正在退出”然后就内核链接中断,7 秒后 bulabula,B 设备的思源笔记就卡死了,周而复始,B 始终无法把云端的数据副本下载到本地 😭 重装了软件 + 重登了账号还是不行

    1 回复
  • 88250
    订阅者

    思源的同步不是实时双向同步,而是版本号递增机制:A 上面修改以后版本会递增,这时候如果 B 上面也同时做了修改,那么 A 和 B 的版本号就相同了,所以不会同步。

    所以请不要同时在两个设备上修改,思源同步只能支持单向同步。具体同步的原理可以参考帮助文档理解,谢谢。

    2 回复
  • byxns
    订阅者 作者

    谢谢,也有在用其他几款同步产品,您说的逻辑我明白啦,但是问题的起因是 A 设备编辑玩同步了,且退出后才打开的 B 设备但是却无法同步,才有了后续的一系列问题 😭

    1 回复
  • jearton10
    支持者 订阅者

    点云端同步时,永远都先拉取云端数据,如果有 diff,则先 merge 到本地后,再同步到远端。这个 merge 可能会造成冲突,如果有冲突,需要提示手动解决。我觉得只要做到这个程度就可以。

    而至于并发同步到远端的情况,即 ABA 问题,遇到这个,就后面提交的会覆盖前面提交的。这种情况概率很低的,一个人要在两个设备上同时修改同一个文档并发同步才会出现,平时使用时注意点就可以规避了。

    1 回复
  • 88250
    订阅者

    老版思源用 git 时就是这个处理步骤,冲突的情况普通用户很难解决。所以后面重制同步时才换成了强一致性覆盖,这样即使发生冲突覆盖也能从历史恢复,对普通用户更友好一些。

    1 回复
  • 88250
    订阅者

    在 工作空间/data/.siyuan/conf.json 中有同步版本号,可以看下两个设备上当前的版本号是否一致。

    1 回复
  • jearton10
    支持者 订阅者

    好吧,如果强制覆盖的话,有历史记录能回溯也可以

  • byxns 1 评论
    订阅者 作者

    还是同样的问题,B 电脑能读取 A 同步过的云端数据,却就是不能把云端的数据给同步到 B 电脑上,真的好头疼,卸载软件重装也没用,有没有解决办法呢?这个 10.25 16.30 的数据是 A 电脑同步到云端的数据,B 怎么都同步不下来,停留在 B 电脑之前的版本

    image.png

    看了社区内其他问题,换了 http 协议后就好啦,可能是梯子的问题?好耶
    byxns
请输入回帖内容 ...