如何配置Unison实现单向忽略指定文件/目录的变更?
Unison 永久配置:空间不足端删除文件不同步到另一端
要实现空间不足端删除指定目录/文件时,不同步删除另一端对应内容,并让规则自动生效无需手动确认,可通过以下配置实现:
核心配置方案
在Unison偏好文件(如~/.unison/default.prf)中添加以下规则:
# 忽略从本地(空间不足端)到远端的 siteplan/GIS 路径下的删除操作 ignoredelete = siteplan/GIS -> localroot # 自动处理所有可自动解决的同步操作(无需手动确认) auto = true
规则细节
ignoredelete = siteplan/GIS -> localroot:明确告知Unison,当检测到本地siteplan/GIS路径下的文件/目录被删除时,不将该删除操作同步到远端。auto = true:让Unison自动执行所有无冲突的同步逻辑,包括上述忽略删除的规则,全程无需手动确认操作。
为何partial规则无法满足需求
你之前使用的nodeletionpartial、nocreationpartial类规则,仅将对应操作的默认行为改为需手动确认(从自动执行变为询问用户),并未直接跳过同步流程。这类规则适用于需要人工判断的场景,但无法实现你想要的“自动忽略删除同步”效果。
扩展配置示例
- 忽略多个路径的删除同步:
ignoredelete = siteplan/GIS -> localroot ignoredelete = large_files/archive -> localroot
- 若空间不足端为远端,只需替换目标根目录:
ignoredelete = siteplan/GIS -> remoteroot auto = true
内容的提问来源于stack exchange,提问作者Greg Nelson
相关产品推荐
相关产品推荐

