我们是由3个开发人员组成的小团队(Boss,我和另一个主要从事远程工作的开发人员),我的任务是为Mercurial HG设置存储库服务器.
看起来我可以简单地将我们的集中式存储库放在共享网络驱动器上.这将非常容易设置,但似乎存在任何人都可能滥用直接工作/修改源存储库的便利的风险.这就是为什么我在考虑使用HgWebdir服务器来控制对中央存储库的访问.因此,不鼓励直接访问中央源存储库,但共享驱动器将在这里以防万一.
我想这是一个定义我们内部版本控制程序的问题,而不是一个真正的版本控制问题,但我仍然继续问问题.因为我觉得我没有足够的经验做出决定,如果我不能100%确定我的理由和手段是有效的,那么我可能很难强制执行版本控制系统应该被其他人使用的方式开发人员.
编辑:
我可以看到共享文件夹与版本控制软件一起使用时存在潜在问题.但是,当推送到共享文件夹时,任何人都想更多地解释在幕后发生的事情?我的理解是共享驱动器本质上是一个共享链接/快捷方式,因此对于共享驱动器,本地计算机上的Mercurial只保留该链接的锁定,但事实是每个用户计算机可能有一个不同的Mercurial实例持有链接的锁定,而服务器的Mercurial实例将在物理驱动器上保留自己的链接.我可以看到它很复杂,但它会如何失败?我可以理解结论,但我自己不能将事实与结论联系起来