什么是Ubuntu One冲突以及如何解决它们?

有时在与Ubuntu One同步的文件夹上会出现带有.conflict扩展名的文件。 为什么会发生这种情况,我该如何应对冲突呢?

当您在多台计算机上使用文件的X版本开始时,会发生冲突,我们称它们为机器a和机器b 。 然后机器编辑文件,使其成为X + a (文件的原始版本加上在机器a上进行的更改)。 机器a将一个版本X + a发送到服务器需要一些时间,服务器需要一段时间才能将版本X + a发送到机器b。 因此,当机器b仍然具有版本X (没有在机器a上进行更改的原件) 时,会有一个时间窗口 。 如果机器b在该精确时刻编辑文件,它将向服务器发送版本X + b而不是X + a + b 。 在这种情况下,服务器无法分辨哪个是正确的版本,因为它取决于用户正在做什么是主观的,因此它将保持两个版本为其中一个添加“.conflict”扩展。

Ubuntu One常见问题解答包含有关如何解决冲突的信息 。

如果您在多台计算机上与U1同步的某些文件的往返服务器的传输速率低于编辑速率,则U1文件听起来不像是适合您的工具。 你应该寻找具有冲突处理的工具,比如u1db,bzr或git。

如果情况并非如此但你仍然遇到很多冲突,那么你可能会遇到一个错误,你应该在启动板上报告它。

发生冲突时的时间窗口大小取决于许多因素,例如带宽,服务器负载以及Internet提供商与服务器之间链接的负载。