我已经完成了以下步骤,使用我们的git repo设置ssh部署密钥,以便能够在没有用户名和密码的情况下进行git pull:
注意:我使用的是AWS EC2 / Ubuntu 14.04.3
ssh-keygen -t rsa -b 4096 -C "ownersEmail@gmail.com"
然后将这些保存为〜/ .ssh / sudo git pull git@github.com:ownersUsername/OurRepo.git
并收到以下错误权限被拒绝(publickey)。 致命的:无法从远程存储库读取。
请确保您拥有正确的访问权限 存储库存在。
另一个注意事项:此存储库在其他用户帐户下是私有的。
另外,当我尝试ssh git@github.com
时,我得到了:
您好userName / Repo!您已成功通过身份验证,但GitHub不提供shell访问权限。 与github.com的连接已关闭。
部署密钥随着使用而出现。现在已经讨论了这个问题超过4个小时了,非常感谢,谢谢。
答案 0 :(得分:7)
问题是你是否使用以root身份运行命令的sudo,它会尝试使用root用户密钥而非用户的密钥。
您想要做的是:
/var/www
答案 1 :(得分:0)
当您执行git pull时,您不需要该链接。
git pull <remote> <branch>
您需要克隆命令的完整网址
sudo git clone git@github.com:ownersUsername/OurRepo.git
要测试你的ssh密钥是否合适,请使用:
git fetch --all --prune