我打算编写一个程序,通过互联网在多台计算机上实时同步文件夹。我想知道是否有任何同步算法来处理文件同步冲突,即计算机A试图保存文件,而计算机B已删除文件。
答案 0 :(得分:8)
您提供的示例正是为什么同步被认为是一个难题。
计算机A删除了计算机B仍然拥有的文件。现在:你如何知道文件是否被添加到B上,应该被复制到A,还是在A上删除,应该在B上删除?你没有,真的。许多同步系统都存在需要由人类解决的冲突变化的可能性。
已经构建了许多工具来进行同步,包括:
答案 1 :(得分:3)
您可能还想查看Unison。它是一个多向文件同步工具,它使用rsync算法确保仅发送文件的已更改部分。