出现文件冲突通常是由于本地的文件和云端文件数据内容不一致,为了不让数据丢失,客户端在同步时会在本地保存云端的文件,并将本地的文件命名为冲突文件,其内容为另一份修改的版本,冲突文件和源文件会同步到到所有电脑上。
以下情况可能引发冲突:
- 您和您的伙伴同时修改了同一个文件
- 同步应用程序自动生成文件时(例如QQ聊天记录、eclipse自动编译结果等),如果多个电脑同时运行该应用程序,则很容易产生冲突
- 解除绑定同步文件夹后,修改了文件夹内的文件内容,再次绑定后,被修改文件一定会冲突
- 在未打开坚果客户端的情况下,在两台电脑上修改了同一个文件
坚果云重命名的冲突文件的文件名在windows上带有“-冲突”字样,在linux和mac上带有“-NSConflict”字样。如果该同步文件夹还会和用户同步,那么冲突文件名字中会加上产生该冲突文件的用户昵称。
具体如下图所示:
文件冲突发生后,你可以在本地搜索所有带有“-冲突”(Windows)字样或”-NSConflict”(Mac OS X或Linux)的文件,采取以下措施:
- 如果确定文件内容没有实质修改,或者冲突文件内容应该被云端文件覆盖,那么可以直接移除所有冲突文件。即使出现误操作,仍然可以从坚果云的历史版本中恢复出该冲突文件,进行内容比对。
- 如果明确两份文件的内容有区别(此情景常发生于多人同步),您需要手动打开两个文件,比对内容,然后将冲突文件中的修改挪到原文件中,随后删除冲突文件。 对于文本文档,可以采用winmerge等工具进行比对;对于Word文档,可以采用Word自带的文件内容比较进行比对(Office 2003:工具->比较并合并文档,Office 2007以上:审阅->比较)。
- 如果因为卸载客户端或者“取消同步”后修改了文件导致内容和云端不一致,在重新安装客户端和“恢复同步”后产生的冲突,那么可以确信冲突文件应该是更新版本。您可以删除云端同步下来的文件,然后将冲突文件重命名为原来的名字。
文件发生冲突给同步带来了不便,因此需要尽量避免冲突发生。以下是一些避免发生冲突的建议:
- 邀请伙伴与您同步时,请尽量控制伙伴的操作权限,如果伙伴仅需读取文件,那么请将他的权限设置为“只读”。
- 如果伙伴需要与您一起操作同步文件夹,那么指定某个用户对内容分类和管理,其他的用户只负责添加、编辑文件,而避免移动和删除文件。另一种思路是,每个用户创建的文件都放在以个人名字命名的子文件夹下。用户尽可能将文件名字赋予意义和容易理解。
- 与不同伙伴同步的文件最好放在不同的同步文件夹中,并分别邀请不同伙伴加入,这样可以很好的控制同步文件夹的参与人数,减少冲突发生的频率。
- 避免将未同步完成的文件手动拷贝到其他电脑,这样容易引发冲突,尤其是office文件。通常情况下,坚果云的局域网同步能够很好的处理这个场景。
- 避免取消同步某个同步文件夹,然后再将其恢复同步。因为取消同步后,修改了文件夹内的文件内容,再次恢复同步后,被修改文件一定会冲突。
- 同步应用程序自动生成文件时(例如QQ聊天记录、eclipse自动编译结果等),避免该应用程序同时在多台电脑上运行。针对QQ聊天记录,请务必在坚果云完成对云端数据的同步后再启动和登录QQ,否则因为QQ自动修改聊天记录, 很容易造成冲突。