syncthing在mac上因并发编辑生成过多.conflict-文件,需设最大冲突数为3并清理旧副本,再通过.stignore排除易冲突文件类型。

Mac上Syncthing因多设备并发编辑同一文件,会自动生成大量带.conflict-时间戳后缀的副本,这些文件堆积在同步目录中,既占用空间又干扰后续同步逻辑,必须限制其数量并清理冗余。
调整Syncthing冲突保留上限
默认配置不限制冲突副本数量,导致每次冲突都新建一个,几天内就能生成十几份。必须手动设限,否则磁盘空间会被无声吃掉。
打开Syncthing Web GUI → 点击右上角【操作】→【设置】→ 滚动到底部点击【高级】→ 展开【冲突处理】区域。
勾选【启用冲突处理】,确保该功能实际生效;在【最大冲突副本数】输入框中填入【3】——这个值足够保留最近三次修改痕迹,又不会让历史副本无限膨胀。
修改后无需重启服务,Syncthing会在下次检测到新冲突时自动删除最旧的冲突副本,只保留最新三份。
批量清理已存在的冲突文件
改完设置只能管住未来的冲突,已生成的几十个.conflict-*文件还得手动清掉。用终端命令比访达一个个删快得多,也更彻底。
打开【终端】,粘贴执行以下命令(每行回车一次):
find ~/Sync -name "*.conflict-*" -type f -delete 2>/dev/null
find ~/Documents/Projects -name "*.conflict-*" -type f -delete 2>/dev/null
注意把上面路径替换成你实际的同步文件夹路径,比如~/百度网盘或~/Library/Application Support/Syncthing;如果不确定路径,先在GUI里点开对应文件夹的【编辑】→ 查看【路径】字段。
执行完后输入ls | grep conflict确认当前目录下已无残留,有则说明路径填错了,得重来。
用.stignore排除高风险文件类型
有些文件天生容易冲突——比如临时笔记、日志、数据库文件、未提交的代码编译产物。它们被多个设备频繁写入,但内容又不值得人工合并,纯粹是制造垃圾。
方法一:在同步文件夹根目录新建文件,命名为【.stignore】(注意开头是英文点)。
方法二:用文本编辑器打开它,逐行添加要屏蔽的模式,例如:
*.log
node_modules/
cache/
temp_*.md
每行一条规则,支持通配符和目录匹配;保存后Syncthing会立即停止同步这些路径下的任何变更,也不会再为它们生成冲突副本。
这一步做完,下次打开GUI的【状态】页,你会发现那些反复报错的文件条目直接消失了——不是修复了,而是被主动绕开了。











