在共享环境中,系统范围的Mercurial安装是否足够?

时间:2011-09-26 17:55:13

标签: mercurial installation install

我正在学习如何在我们的团队系统上安装Mercurial,但我没有足够的经验做出决定。

对于我们的团队,我们有一台服务器机器用作存储库。每个团队成员也都有自己的Linux RedHat安装机器。但是,我们在本地终端上没有做任何事情,我们在服务器上做了一切。每个成员在服务器上都有一个用户目录,例如/ home / Cassie,/ home / john,...我们保存所有代码并在那里工作。当我们打开本地终端时,GNOME系统会在服务器上显示我们的个人文件而不是本地计算机。每当每个人都点击桌面上的终端应用程序时,它就会连接到她自己的主目录。因此,我们不需要使用SSH命令连接到服务器。它就像学校的多用户系统。每个人都有一个用户帐户,她登录自己的帐户做自己的工作。我希望我可以在该服务器上安装一个共享存储库,每个人都可以在那里执行push,pull等所有命令。

1)由于我们使用共享环境,这是否意味着我只需要在服务器上安装Mercurial,这足以让每个人都做“提交”,“推送”,“拉”等命令? / p>

2)通过仅安装系统范围的Mercurial,它是否会消除进行本地提交的能力?如果我想让每个人都具备“本地提交”能力,我该怎么做呢?

3)我在网上搜索过。有人提到,对于共享网络服务器,如果他们试图同时访问同一个文件,则不可能为任何两个用户提供锁。这是否意味着我的情况?

总之,我们在服务器上完成所有工作。我希望找到一个计划,当每个人仍具有本地提交能力时,对每个人共享的存储库进行Mercurial控制,如果任何两个用户同时尝试访问文件,则存储库仍然有一些锁保护。如果这种情况可行,我可以在服务器上安装Mercurial,还是需要为服务器和用户机器安装Mercurial?如果情景不可能,有人会建议我计划对我们的系统进行版本控制吗?

1 个答案:

答案 0 :(得分:3)

  

1)由于我们使用共享环境,这是否意味着我只需要在服务器上安装Mercurial,这足以让每个人都做“提交”,“推送”,“拉”等命令?

如果您的用户登录服务器上的shell以便开展工作,那么仅在服务器上安装Mercurial就足够了。

  

2)通过仅安装系统范围的Mercurial,它是否会消除进行本地提交的能力?如果我想让每个人都具备“本地提交”能力,我该怎么做呢?

您的用户可能会从共享的“根”存储库签出到他们自己的主目录中,以便处理代码。他们将在其主目录中拥有repo的“本地”副本,并将进入共享根存储库。

  

3)我在网上搜索过。有人提到,对于共享网络服务器,如果他们试图同时访问同一个文件,则不可能为任何两个用户提供锁。这是否意味着我的情况?

只要您的用户在他们自己的本地副本中工作,他们就不会互相干扰。可能出现冲突的唯一时间是提交回共享根存储库 - 在这种情况下,用户需要合并其更改并解决任何冲突。

我建议您仔细阅读Joel Spolsky的优秀Hg Init教程,以便更好地了解Mercurial如何处理“中央”和“本地”副本。