有人看到这个错误并知道该怎么做吗?
我正在使用终端,我在根,GitHub存储库存在,我不知道现在该做什么。
> git push -u origin master
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
有人看到这个错误并知道该怎么做吗?
我正在使用终端,我在根,GitHub存储库存在,我不知道现在该做什么。
> git push -u origin master
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
当前回答
我试图用几个小时来解决类似的问题。最后,我删除了所有的密钥,并创建了没有密码的新密钥,最终摆脱了这个问题。
问题是SSH密码,需要删除!
其他回答
确保SSH -add -l显示存在于Github帐户的SSH密钥列表中的SSH密钥的指纹。
如果输出为空,但你知道你有一个与你的github帐户一起使用的私有SSH密钥,在这个密钥上运行SSH -add(在~/. SSH中找到。默认情况下,它被命名为id_rsa,因此您可能会运行ssh-add id_rsa)。
否则,按照下面的说明生成SSH密钥对。
这对我很有用
有2个选项在github - HTTPS/SSH
我错误地选择了SSH,因此出现了错误-_-
切换到HTTPS,然后复制url再次尝试:)
假设您正在通过SSH连接GitHub,您可以运行以下命令来确认这一点。
$git config --get remote.origin.url
如果您得到的结果格式如下:git@github.com:xxx/xxx.github.com.git,那么您应该执行以下操作。
生成SSH密钥(或使用现有密钥)。如果你有一个,你只需要将你的密钥添加到ssh-agent(步骤2)和你的GitHub帐户(步骤3)。
下面是那些没有SSH密钥的人。
步骤1生成rsa公私钥对。
$ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
系统会要求您确认保存SSH密钥的位置以及您想使用的密码短语。
步骤2在ssh-agent中添加密钥
确保ssh-agent已启用 $eval "$(ssh-agent -s)" 将SSH密钥添加到SSH -agent: ssh-add ~ / . ssh / id_rsa美元
步骤3在帐号中添加SSH密钥
安装xclip
$xclip -sel clip < ~/.ssh/id_rsa.pub
然后将复制的密钥添加到GitHub
进入“设置”->SSH密钥(个人设置侧栏)->添加SSH密钥->填写表单(密钥在剪贴板上,只需使用ctrl+v)->添加密钥
通过以上步骤,您应该可以解决权限问题。
参考链接: 生成SSH密钥。
我在远程主机上使用git pull寻找类似错误消息的解决方案时发现了这个页面:
$ git pull
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我通过ssh -AY remote_hostname从本地计算机连接到远程主机。这不是OP问题的解决方案,但对其他遇到这个页面的人很有用,所以把它贴在这里。
注意,在我的例子中,git pull在我的本地机器上工作良好(也就是说,ssh密钥已经设置,并添加到GitHub帐户等)。我通过将这个添加到~/来解决我的问题。Ssh /config在我的笔记本电脑:
Host *
ForwardAgent yes
然后我用ssh -AY remote_hostname重新连接到远程主机,git拉现在工作了。配置中的更改允许将我的ssh对从本地计算机转发到任何主机。ssh的-A选项实际上是在ssh会话中转发它。点击这里查看更多细节。
如果您将ssh访问更改为https访问远程存储库,问题就解决了:
git remote set-url origin https_link_to_repository
git push -u origin master