情况如下:
我们公司有两个主要的生产站点,通过WAN进行通信。我们在内部开发了一个软件,该软件在我们的服务器上使用了大约100Gb 的磁盘空间(应用程序数据部署给我们的客户,有很多图像)。为了提高性能,我们的网络管理员选择了 DFS 复制(每 6 小时一次)。这意味着我们的用户(公司内部的人)不必等待(有时 2-3 小时)下载所需的文件,因为它们在本地(通过 LAN)可用。
问题是DFS 复制使用的算法是 "Last Writer Wins"。因此,在同时更改的情况下(在开发/维护期间),具有最新日期的文件将胜出。我想避免这种数据丢失。
我是整个开发过程的项目经理。我想做的是向人们介绍版本控制系统以解决同时修改问题。我计划使用 Mercurial 有几个原因,主要是因为它是分布式的、易于解释、可供个人使用、免费,并且(最重要的是)具有强大的合并功能。但是,由于复制过程 (WAN) 不知道如何合并,因此在本地 (LAN) 使用时版本控制系统的好处会丢失。
一些可能的解决方案是:
仅在 WAN 上使用版本控制(希望压缩足以加快速度)
仅使用 DFS,并手动跟踪更改(容易出错)
找到两种方法的解决方法
团队很小(大约 10 人)。感谢您的帮助和经验。