有人看到这个错误并知道该怎么做吗?

我正在使用终端,我在根,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 /文件夹,即id。Rsa和id.rsa.pub 确保密钥有正确的权限,你可以运行chmod: Chmod 600 ~/.ssh/id_rsa . exe Chmod 644 ~/.ssh/id_rsa.pub 确保您的公钥(id_rsa.pub)的内容与远程存储库配置中上传的内容匹配 最后修复ssh代理的问题: ssh-add

更多信息:https://itcodehub.blogspot.com/2015/01/ssh-add-problems-with-ssh-agent-and.html

其他回答

我在之前的一个php项目中使用github。在使用github时,我使用的是ssh而不是https。我把我的机器设置成这样,每次我提交和推送代码时,它会问我的rsa密钥密码。

几天后,我停止了php项目的工作,忘记了我的rsa密码。最近,我开始在一个java项目上工作,并搬到了bitbucket。因为,我忘记了密码,没有办法恢复它,我猜,我决定使用https(推荐)协议的新项目,并得到了同样的错误在问题中询问。

我是怎么解决的?

运行这个命令告诉我的git使用https而不是ssh: Git配置——全局url."https://"。与其使用git: / / 如果有遥控器,移除遥控器 Git远程rm来源 重做一切从git init到git push,它工作!

PS:我还在调试过程中从我的机器上卸载了ssh,以为删除它就能解决问题。是的,我知道!:)

设置SSH访问GitHub的完整步骤已经发布在ServerFault上。

查看来自@Alex的答案:https://serverfault.com/a/1088209/416091

在2022年7月24日,我应该在SSH用户配置文件(~/. SSH /config)中将服务器和端口设置为SSH .github.com:443。

以防有人需要这个。我在用户的.ssh文件夹中创建了一个不同名称的ssh密钥,如ar-2022-ssh。这样做的问题是,检查现有的SSH密钥指定GitHub支持的公钥是以下之一。

id_rsa.pub
id_ecdsa.pub
id_ed25519.pub

一旦我在生成密钥时将我的ssh密钥名称更改为其中之一,它就可以连接到GitHub

你可以试试这种方法……

选择其他链接

我知道这个问题。添加ssh密钥后,也添加您的ssh密钥到ssh代理(来自官方文档)

ssh-agent -s
ssh-add ~/.ssh/id_rsa

一切正常工作后,git可以查看适当的密钥,以前不能。