如何允许多个开发人员推送到我在cPanel中设置的Git服务器?

时间:2018-01-25 23:09:26

标签: git server cpanel

我目前正在使用内置git的cPanel。

我现在可以在本地机器上执行follow命令: git clone username@domainname.com:/ home / username / git / example

它将成功克隆。 然而 每次我克隆它都会询问我的SSH密码。 我还没有设置私人/酒吧密钥系统,我只是想知道如何在不透露我的SSH密码的情况下让它工作。

cPanel不允许我使用sudo(只是抬头)。

1 个答案:

答案 0 :(得分:1)

Git只是使用SSH来验证用户(大多数时候)。你有几个选择。之一:

  • 在服务器上为需要推送到存储库的所有用户创建用户帐户,并授予他们对git存储库的所有读/写访问权限(在操作系统级别)。他们可以使用密码提示(就像你现在一样)或SSH密钥对推送。
  • 或者,使用SSH密钥对(而非密码)并将所有人的授权密钥添加到拥有存储库(当前是您的帐户)的用户帐户,如here所述。 (您可能希望将帐户移至git用户,这样您就不会授予所有人访问所有文件的权限,除非您不关心这一点。)

查看完整的Git服务器设置文档here

修改:您好像正在关注this指南。该指南似乎非常不完整,因为它没有提及有关向存储库添加其他用户的任何内容,并且没有以似乎解释这一点的方式进行设置。如果您想要一个不止一个人可以贡献的存储库,也许您应该使用cPanel来托管它。 (根据官方Git文档中的步骤,为多用户访问设置存储库相对简单。)

编辑2 除了SSH之外,Git还支持其他类型的身份验证,智能HTTP 。如果您想继续使用cPanel来托管您的Git存储库,这似乎最有效,因为这种类型的配置本质上允许您配置HTTP基本身份验证以允许用户推送到存储库。也许这个用例是您所关注的指南所针对的。这种类型的存储库似乎比普通的SSH更难设置,但如果您可以使用cPanel轻松配置某些内容,那么它可能并不困难。有关如何设置的详细信息,请参见Git Smart HTTP手册页。