rsync 正在删除受保护的文件夹

rsync 正在删除受保护的文件夹

我在用着

rsync . $HOST:$PATH --itemize-changes --verbose --human-readable --times --checksum --recursive --delete --delete-excluded --force --filter='dir-merge .rsync-filter'

看起来.rsync-filter像这样:

exclude .gitinstructions
exclude .gitignore
exclude .rsync-filter
exclude .gitlab-ci.yml
exclude .git
exclude timestamp.txt
exclude var
exclude LICENSE.html
exclude LICENSE.txt
exclude LICENSE_AFL.txt
exclude RELEASE_NOTES.txt
exclude config.json

protect media/**/*

尽管在远程,媒体文件夹正在被删除:

$ rsync . $SSH_HOST:$SSH_STAGEPATH --itemize-changes --verbose --human-readable --times --checksum --recursive --delete --delete-excluded --force --filter='dir-merge .rsync-filter' 发送增量文件列表 .d..t...... ./ *删除媒体/测试 *删除媒体/

发送 680.12K 字节 接收 28.00K 字节 472.08K 字节/秒 总大小为 139.20M 加速比为 196.58

我是否遗漏了什么?我基本上希望所有“排除的文件/目录”不上传,而是在远程删除,并且“受保护的文件/目录”不上传也不删除。我确信我遵循了手册页中的正确语法。

答案1

你能确认问题仍然存在吗?

protect media/**/*

在你的顶部.rsync-filter
在你的例子中,它位于过滤器的底部。

来自rsync 手册页

请注意,如果您提供自己的过滤规则,则可能需要手动在列表的更高位置插入自己的排除/保护规则,以便它具有足够高的优先级才能有效(例如,如果您的规则指定了 oq*cq 的尾随包含/排除,则永远不会达到自动添加的规则)。


相关内容