🔄 为什么需要多设备同步?
作为 Clash Verge Rev 的重度用户,你可能在 Windows 台式机、MacBook 笔记本、Linux 服务器甚至手机上使用同一套代理规则和节点信息。手动导出导入配置文件不仅繁琐,还容易造成版本混乱:你可能在笔记本上新加了一条规则,回家后又在台式机上修改了 DNS,两边都变了,到底听谁的?
可靠的配置同步方案不仅能省去这些重复劳动,还能确保 Rule 模式 的分流策略、DNS 设置、以及订阅信息在所有设备上保持一致。本文介绍两种适用于 Clash Verge Rev 的同步方式:WebDAV 和 Git。前者简单易用,适合个人用户;后者提供强大的版本控制,适合进阶玩家和团队。
📊 WebDAV 与 Git:方案对比
| 特性 | WebDAV | Git |
|---|---|---|
| 复杂度 | 低,几乎无学习成本 | 中等,需要基础 Git 知识 |
| 版本历史 | 无,仅保存最新版 | 完整提交历史,可回滚 |
| 冲突处理 | 后覆盖先,简单粗暴 | 需手动合并,但更安全 |
| 依赖服务 | 需自建或第三方 WebDAV 服务器 | GitHub / GitLab / 私有仓库 |
| 适合人群 | 不想折腾的普通用户 | 开发者、多设备频繁修改者 |
简单来说,如果你想要“即配即走”,WebDAV 是最佳选择;如果你追求“万无一失”,Git 的版本控制能力会让你安心。当然,两种方案也可以混合使用,例如将 Git 仓库挂载到 WebDAV 上。
🗂️ WebDAV 同步实战
步骤一:准备 WebDAV 服务
你可以使用坚果云、Nextcloud,或在路由器上通过 Alist 搭建 WebDAV 服务。以坚果云为例,在账户设置中生成一个第三方应用密码,并记下 WebDAV 地址(通常形如 https://dav.jianguoyun.com/dav/)。
步骤二:编写同步脚本
在每台设备的 Clash 配置目录下(默认 ~/.config/clash-verge-rev 或 Windows 的 %APPDATA%/clash-verge-rev),创建一个简单的上传/下载脚本。Windows 下可以使用 PowerShell,Linux/macOS 使用 Bash:
每次修改配置后,运行上传脚本;在新设备上运行下载脚本即可获得最新配置。你也可以配合系统定时任务(cron 或 Task Scheduler)实现自动同步。有关 订阅导入 的自动化更新也能整合进这个流程。
📦 Git 版本控制同步
初始化 Git 仓库
在 Clash 配置目录下执行:
然后将仓库推送到 GitHub 私有仓库(或自建 GitLab)。务必设为 私有,因为配置文件通常包含节点密码和订阅链接。在另一台设备上,只需 clone 该仓库并覆盖配置目录,或使用 git pull 保持同步。
使用 .gitignore 过滤敏感信息
并非所有文件都需要同步。例如 logs 目录、内核缓存等应排除。创建 .gitignore:
规则集(如 Rule Provider 使用的远程文件)因为体积大且通常已有远程源,也可以不纳入 Git,而是让每台设备独立更新。
⚔️ 处理配置冲突与加密
多设备同时修改同一份配置时,Git 会因为冲突而停止合并。此时你需要打开冲突文件,手动选择保留哪部分修改。为了避免这种情况,建议养成“改前拉取,改后推送”的习惯。你也可以在配置中利用 RULE-SET 将自定义规则独立成文件,减少对主配置的直接修改。
由于配置文件中包含节点密码等敏感信息,强烈建议在推送到远程仓库前使用 git-crypt 或 SOPS 进行加密。以 git-crypt 为例:
这样,即使远程仓库意外公开,攻击者也无法直接读取你的节点信息。解密密钥需要安全地分发到每台设备。
🤖 自动化定时同步脚本
创建同步任务
Linux 使用 cron:*/30 * * * * cd ~/.config/clash-verge-rev && git pull
处理网络波动
脚本中添加重试逻辑,或使用 flock 防止并发执行。
自动重载配置
通过调用 Clash API PUT /configs 让新配置生效,避免手动重启。
监控同步状态
利用 Clash Verge Rev 的日志面板查看配置重载结果,或发送通知。
如果你正在使用 TUN 模式,配置重载可能会短暂中断网络,建议在空闲时段执行。
🛡️ 最佳实践与安全建议
- 分离敏感信息:将节点密码、密钥等独立保存,通过
env变量或外部 vault 注入,而非硬编码在 YAML 中。 - 定期备份:无论是 WebDAV 还是 Git,建议保留最近 3-5 个版本,以防误删或损坏。
- 测试同步:在沙盒环境(如虚拟机)先验证同步流程,确认无配置文件损坏或路径错误。
- 使用私密通道:如果通过网络传输未加密的配置文件,请确保使用 HTTPS 或 SSH 隧道。
通过上述方案,你可以在家里的台式机、公司的笔记本、VPS 服务器之间自由切换,而代理策略始终保持一致。如果你想进一步整合订阅自动化,推荐阅读 Rule Provider 实战,将规则集也纳入同步体系。