当我执行以下操作时:
$ git pull origin master
它返回:
Permission denied (publickey).
fatal: Could not read from remote repository.
按照 GitHub 说明的指示,我已验证以下内容:
1) 使用以下命令创建 key :
ssh-keygen -t rsa -b 4096 -C "myemail@gmail.com"
并将其命名为 GitHub
返回:
Your identification has been saved in GitHub.
Your public key has been saved in GitHub.pub.
2) 在 .ssh 目录和本地存储库位置添加到我的 SSH 代理:
eval "$(ssh-agent -s)"
和
ssh-add -K ~/.ssh/GitHub
返回:
Identity added: /Users/myUserName/.ssh/GitHub (/Users/myUserName/.ssh/GitHub)
3) 使用 pbcopy < ~/.ssh/GitHub.pub
复制 key
并将 key 粘贴到 GitHub 设置页面的相应设置区域。
4) 从我的本地 repo 位置我做了一个 ssh -T git@github.com
它返回:
Hi ConfusedDeer! You've successfully authenticated, but GitHub does not provide shell access.
5) 我也做 ssh-add -l
验证它已添加到我的 ssh 代理并返回:4096 SHA256:PcgDpZHUEepM/cQvVn525I5fgwCgVj98wEloWiosQ4s /Users/myUserName/.ssh/GitHub (RSA)
6) 我做了一个 git remote -v
验证原点位置是否正确并返回:
origin ssh://github.com/ConfusedDeer/myiOSapp.git (fetch)
origin ssh://github.com/ConfusedDeer/myiOSapp.git (push)
我将它们与我的 GitHub 帐户进行了比较,看起来不错:git@github.com:ConfusedDeer/myiOSapp.git
7)我注意到设置界面新添加的GitHub key是黑色的,但是我做了ssh -T git@github.com
之后它现在是绿色的并且状态:Added on Mar 19, 2017 Last used within the last day
我错过了一步吗?我可以尝试任何其他故障排除步骤吗?建议?
最佳答案
问题是我需要将我的远程 URL 从 HTTPS 切换到 SSH:我找到了 instructions on GitHub .
我需要改变
来自:
origin ssh://github.com/ConfusedDeer/myiOSapp.git (fetch)
origin ssh://github.com/ConfusedDeer/myiOSapp.git (push)
收件人:
origin git@github.com:ConfusedDeer/myiOSapp.git (fetch)
origin git@github.com:ConfusedDeer/myiOSapp.git (push)
通过执行以下命令:
git remote set-url origin git@github.com:ConfusedDeer/myiOSapp.git
关于linux - SSH 添加,但仍然致命无法从远程存储库读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42891171/