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

我正在使用终端,我在根,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.

当前回答

博士tl;

在~ /。ssh / config把

PubkeyAcceptedKeyTypes=+ssh-dss

场景 如果你使用的是openSSH > 7版本,比如在MacBook Pro的触控条上,它是ssh -V OpenSSH_7.4p1, LibreSSL 2.5.0

你也有一个旧的Mac,原来有你的密钥,你放在Github上,这是可能的,这是使用一个id_dsa密钥。OpenSSH v7没有在默认情况下使用这些DSA密钥(包括这个ssh-dss),但是您仍然可以通过将以下代码放入~/.ssh/config中来添加它

PubkeyAcceptedKeyTypes=+ssh-dss

对我有用的来源是这个Gentoo通讯

现在你至少可以使用GitHub,然后将密钥修复到RSA。

其他回答

你在你的~/中创建了配置文件吗?ssh目录吗?它应该有这样的内容:

Host github.com 
 IdentityFile ~/.ssh/github_rsa

假设您创建了一个名为github_rsa的ssh密钥

然后上传到GitHub…

注意:如果~/中有多个键(2个或更多),则必须采用这种显式配置方式。ssh /目录。如果你不这样指定密钥,那么第一个密钥将被用于github身份验证,因此它取决于密钥文件名。

确保SSH -add -l显示存在于Github帐户的SSH密钥列表中的SSH密钥的指纹。

如果输出为空,但你知道你有一个与你的github帐户一起使用的私有SSH密钥,在这个密钥上运行SSH -add(在~/. SSH中找到。默认情况下,它被命名为id_rsa,因此您可能会运行ssh-add id_rsa)。

否则,按照下面的说明生成SSH密钥对。

这种情况会发生在创建存储库后遵循GitHub指示时。Git将指示您使用以下内容添加遥控器。

Git远程添加源git@github.com:<用户>/<项目>.git

将<>中的内容替换为与您的帐户相关的值。

解决方案是删除.git后缀。添加遥控器的操作如下:

Git远程添加origin git@github.com:<用户>/<项目>

如果您正在使用GitHub for Mac UI,请检查首选项以确保您已登录。

你可以试试这种方法……

选择其他链接