我在EC2上运行的Gitolite服务器运行良好。我以前添加过用户,添加存储库没有问题。
我的Macbook Pro可以毫无问题地将代码推送到存储库(它对repo具有RW+
权限)。我还使用R
权限向存储库添加了第二台计算机,因此我可以克隆它。
问题是,在尝试克隆回购时,我一直收到“权限被拒绝(公钥)”。当我用Gitolite SSH服务器并查看用户“git”的authorized_keys文件时,我做看到第二台计算机的公钥,所以我不确定问题是什么 - - 它看起来好像很好。第二台计算机的公钥也位于keydir
下,并带有相应的名称(raspberry.pub
)
这是我的gitolite conf,改变了一些信息以保护隐私:
repo statistics-app
RW+ = andrew
R = raspberry
注意:“andrew”可以推送代码并克隆repo就好了,但是用户“raspberry”不能。有什么问题?
答案 0 :(得分:3)
您的第二台计算机上应该有一个~/.ssh/config
文件:
host gitolite-raspberry
user git
hostname raspberry
identityfile ~/.ssh/raspberry
(例如,参见“Can not add user with Gitolite”)
您需要检查ssh gitolite-raspberry
是否使用与raspberry
ssh帐户相关联的Gitolite权利来回答您。
如果没有,ssh -vvv gitolite-raspberry
将为您提供线索。
OP Andrew M报告了一个正确的问题:
我没有设置我克隆的文件夹的权限,所以我“sudoed”了git命令。
Raspberry Pi上的root用户不允许克隆,因此失败了。