hg pull with multiple users

时间:2016-12-08 07:14:05

标签: ubuntu mercurial

我将一个mercurial存储库克隆到Ubuntu服务器以在那里部署项目。一切都适合我,但当我的同事尝试使用“hg pull”更新服务器代码时,它使用我的凭据进行拉动。

让多人更新服务器的最佳方法是什么?我现在能想到的唯一方法是在存储库中创建一个公共用户,我们都知道密码。

在服务器上,我们都拥有属于同一组的自己的用户帐户。

编辑:我想我也可以指定网址:“hg pull https://user@server.com/project”有效,但这仍然有点乏味

1 个答案:

答案 0 :(得分:0)

您确实应该在存储库服务器上创建一个用户,以便获得对该存储库的访问权限。优选地,您还允许通过来自部署项目的服务器的密钥通过密钥访问存储库。这样,部署服务器上的用户可以从存储库服务器中提取而无需任何密码

您可以通过安装hg-ssh并适当地编辑其.ssh / authorized_keys文件来限制该用户的存储库服务器上的ssh访问:

  

command =“/ home / repository-user / bin / hg-ssh *   HG-回购/ *”,没有端口转发,无-X11-转发,没有代理转发   ssh-rsa AAAAB3Nz ... aS8JqGh4Q == someone@example.com(Max Mustermann)

您可以通过这种方式轻松地允许其他人或服务器访问该存储库:只需让它们生成密钥对。并将其公钥安装在存储库服务器上(共享)存储库用户的authorized_keys文件中。如上所示,通过将允许的ssh命令限制为hg-ssh,简单地限制所有远程用户使用任何shell。