我通过ssh
密钥面临Git身份验证问题。我在ssh
文件夹中的服务器上使用命令ssh-keygen -t rsa
创建了home/projectname/.ssh
密钥。然后将此密钥添加到https://github.com/settings/ssh
中的Github帐户。
当我试图将下面的代码拉出时发生错误(请检查附加图像)
Permission denied (public key)
让我知道问题是什么,我该如何解决?
我试过的步骤
答案 0 :(得分:0)
问题是当你在/home/projectname/.ssh中保存文件时,github正在/home/.ssh目录中查找ssh密钥
您必须在/home/.ssh目录中添加一个包含以下内容的配置文件
Host github-project1
User git
HostName github.com
IdentityFile ~/projectname/.ssh/filename.key
答案 1 :(得分:0)
Open a terminal window.
Edit the ~/.ssh/config file.
如果您没有配置文件,请创建一个。
为每个标识组合添加别名,例如:
Host workid
HostName bitbucket.org
IdentityFile ~/.ssh/workid
Host personalid
HostName bitbucket.org
IdentityFile ~/.ssh/personalid
How to add ssh key to github account?
强> SSH keys
Add ssh key
你们都准备出发了: - )
答案 2 :(得分:0)
解决方案#1:
ssh-add /home/projectname/.ssh/id_rsa
git pull origin master
解决方案#2(对于最近的git版本)
GIT_SSH_COMMAND='ssh -i /home/projectname/.ssh/id_rsa' git pull origin master
如果解决方案#2有效,您可以将GIT_SSH_COMMAND='ssh -i /home/projectname/.ssh/id_rsa'
添加到~/.profile
(或~/.bash_profile
,无论存在的是什么),而不是在登录时设置。