force 的 Unison 手册的一部分:



我的理解是,当发生冲突时,会采用更新的文件版本。但是还有其他选项 prefer,它也可以设置为 newer。不幸的是,prefer 的描述很少,所以我不知道 prefer=newer 是什么意思,有什么区别?

最佳答案

喜欢较新的
你的理解并不完全。当检测到某个文件的版本不同,并且其中一个文件只是另一个文件的更新版本时,Unison 会将较新的一个复制到另一个上。
现在,如果您在两台机器上更新单个文件的每个版本而不在编辑之间进行同步怎么办?这两个文件都不是另一个文件的更新版本,因此 Unison 不清楚该保留哪个文件。这些文件被称为 in conflict ,Unison 会提示您选择一个文件(或者如果您设置了 auto true,Unison 将跳过该文件)。 prefer newer 选项将告诉 Unison 在这种情况下不会发生冲突,并且假设具有最新时间戳的文件是您想要同步的文件。如果您希望 Unison 在后台运行,并且带有 auto truerepeat watch 等选项,这一点很重要。这是手册中prefer的相关解释,注意只有路径或文件冲突时才重要:


强制更新
对于 force newer ,看起来您在引用的行之前错过了手册中的行:

因此,虽然 prefer 选项只是在发生冲突时同步文件(特别是如果文件已更改),但 force 将同步所有内容,无论是否有更改。

关于synchronization - Unision 选项 `prefer=newer` 和 `force=newer` 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46571315/

10-11 17:27