我正在寻找一种解决方案,在该解决方案中,我可以以最少侵入性的方式在企业环境中安装版本控制。我正在考虑的一种可能的解决方案是在每个 Windows 桌面上设置 mercurial,并在共享上设置 repos 的工作副本。所以不会有 mercurial 的服务器安装。显然,这并不能同时解决同一文件上的多个用户问题,但这不是我们要解决的问题。这不是备份,但是版本控制不应该是备份。另外,我们有足够的备份。
这个设置会起作用吗?提交日志中的用户名是否会被正确记录。或者一切似乎都是由同一个用户提交的?任何人都有这种设置的经验?
是的,您可以按照您的建议进行。现代版本的 Mercurial 并不真正关心工作副本存储在哪里 \xe2\x80\x94 它们可以存储在本地磁盘或网络文件系统上。
\n\n我们过去(1.7.1 版本之前)遇到过一些问题,其中 Mercurial 无法破坏网络文件系统上存储的存储库中的硬链接。问题是,如果这样做,服务器上的两个存储库将被硬链接hg clone foo bar。如果用户将提交推送到bar,并通过网络共享访问存储库,那么 Mercurial 必须发现其中的文件bar/.hg/store被硬链接到foo/.hg/store,以便它可以破坏链接。由于Windows 和 Linux 中的各种内核错误,旧版本的 Mercurial 可能会失败。
因此,回顾一下:如果您只是在所有客户端上安装 Mercurial,那么您的服务器不需要安装 Mercurial。创建(我希望我能正确记住 UNC 路径)
\n\n\\\\server\\share\\main\nRun Code Online (Sandbox Code Playgroud)\n\n作为主存储库并为开发人员制作克隆:
\n\n\\\\server\\share\\alice\n\\\\server\\share\\bob\nRun Code Online (Sandbox Code Playgroud)\n\nAlice 和 Bob 将在那里工作并独立修改工作副本。他们正常提交,准备好后,他们会推回到main存储库。用户名存储在变更集中,因此当变更集进入主存储库时,它们将被保留。
| 归档时间: |
|
| 查看次数: |
1678 次 |
| 最近记录: |