我已成功gitolite-admin.git在服务器上创建了repo(比如说)10.107.105.13.我可以10.14.42.7通过发行在本地机器上克隆这个仓库(比如说)git clone gitolite@10.107.105.13:gitolite-admin.我必须在.ssh/config文件中添加一些行以确保使用正确的私钥.
然后,我添加了一个用户dilawar到conf/gitolite.conf文件,并将相应的键dilawar.pub到keys文件夹中.我已经添加并将此提交提交给gitolite-adminrepo.我还在.ssh/conf文件中添加了一个条目,以便使用正确的私钥.但是当我尝试做的时候git clone dilawar@10.107.105.13:testing,gitolite要求输入密码.我的印象是我不必在10.107.105.13上创建用户dilawar.我已通过登录服务器检查存储库testing.git是否存在以及公钥dilawar.pub已被添加到.ssh/authorized_keys.
我还试图ssh -vvvv dilawar@10.107.105.13检查是否提供了正确的文件.这是我的.ssh/conf档案.
HostName 10.107.105.13
User gitolite
IdentityFile ~/.ssh/gitolite
Host 10.107.105.13
HostName 10.107.105.13
User dilawar
IdentityFile ~/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
在配置文件中,我看到:
User dilawar
Run Code Online (Sandbox Code Playgroud)
那是错的.与gitolite服务器的ssh通信始终使用相同的帐户(此处gitolite).
使用的私钥有什么变化,这将有助于gitolite确定您的身份.
你~/.ssh/config提交的文件应该是:
Host admin
HostName 10.107.105.13
User gitolite
IdentityFile ~/.ssh/gitolite
Host dilawar
HostName 10.107.105.13
User gitolite
IdentityFile ~/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)
对于克隆gitolite-admin,您将使用:
git clone admin:gitolite-admin
Run Code Online (Sandbox Code Playgroud)
对于克隆,repo dilawar可以访问:
git clone dilawar:aRepo
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅" Gitolite:添加用户无法正常工作,以及以root身份克隆时被fallthru拒绝? ".
另见" gitolite如何使用ssh "
将公钥添加到服务器的
~git/.ssh/authorized_keys文件是ssh如何使用pubkeys对用户进行身份验证.
假设sita@work.station是尝试登录为git@server.
你所要做的是把~sita/.ssh/id_rsa.pub用户文件sita的工作,站上和追加的内容(记住它的只有一行),以~git/.ssh/authorized_keys供用户git在服务器上.authorized_keys文件可以添加多个公钥(来自许多不同的人),因此任何人都可以登录
git@server.
| 归档时间: |
|
| 查看次数: |
10822 次 |
| 最近记录: |