是否可以仅以一种方式同步文件但检测双方的更改。
因此,如果目标文件更改,下一次同步应该覆盖该文件。
ootb,没有。
默认情况下,它只会发送在源检测到的更改。如果源和目标都被更改,那么你会得到一个冲突,你可以通过覆盖目标来解决。如果只有源没有改变,它不会发送文件,无论目标是否改变。
听起来您真正想要的是镜像一组文件。如果您可以在源和目标之间使用 Windows 文件共享,robocopy 将是您的绝佳解决方案。Robocopy 是 Windows 内置的实用程序。有一个镜像选项,它可能会很容易地做你想做的事情(/MIR
开关)。无论目的地发生什么变化,这都会重置目的地以匹配源。
这是一个可以让您开始研究 robocopy的链接。
解决此问题的一种方法是使用同步框架来检查是否有更改,但使用不同的方法(如 WCF)将内容从服务器移动到客户端。这意味着您可以检测两端的更改,然后使用事件处理程序创建要发送的文件列表