解决同步冲突

gstore排障

解决同步冲突

同一文件相对上次同步基线,在本地和远端都出现不同变化时会冲突。删除也算变化;覆盖选项不能修复授权或网络错误。

slothtool gstore status --json
slothtool gstore conflicts --json
slothtool gstore list --json

状态检查可能刷新远端到缓存,但不等于将远端文件恢复到真实目录。先核对冲突文件和全部绑定,备份双方有价值的内容,再选择处理方向。

无绑定参数的策略

选择命令影响
远端为准gstore pull --prefer-remote允许覆盖冲突的本地内容
本地为准gstore push --prefer-local允许覆盖冲突的远端内容
双向同步并选择冲突方向gstore sync --prefer-local 或 --prefer-remote对当前绑定集合应用指定策略

表中的命令前均加 slothtool。默认没有覆盖策略时,冲突会停止操作。普通 push 遇到尚未处理的远端变化,也可能要求先同步。

单绑定限制

2.10.0 基线中的 pull/push/sync <tool> <name> 服务仍会在冲突时直接停止,不能因为 CLI 接受 --prefer-* 就假定单绑定支持同样策略。

单绑定冲突优先备份后人工整理。只有确认所有绑定的影响范围,才考虑无绑定参数的覆盖操作;不要删除同步基线或缓存来绕过检查。

处理后重新查看状态和目标内容,再从另一台设备验证。若是 Git 合并、授权或网络问题,先运行 slothtool gstore doctor --json 定位。