从GitHub下载程序时使用git clone
遇到了如下报错:
git@github.com: 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公钥。在终端中使用ls -al ~/.ssh
进行查看。默认情况下GitHub公钥文件名应为id_rsa.pub
、id_ecdsa.pub
、id_ed25519.pub
中的一个,如果没有则说明需要新生成密钥。
在终端中输入
$ ssh-keygen -t ed25519 -C "emailaddress@example.com"
随后出现提示
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/you/.ssh/id_ed25519)
此时直接回车即使用默认目录
随后出现提示
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
输入记得住的密码,SSH密钥便创建成功了。
接下来我们仅需将密钥添加至自己的GitHub账号即可。
首先启动ssh代理
$ eval "$(ssh-agent -s)"
再查看SSH公钥
$ cat ~/.ssh/id_ed25519.pub
复制公钥,在GitHub页面上点开自己的头像,进入Settings
在侧边栏进入SSH and GPG keys
再选择New SSH key
title可以自定,将复制的密钥粘贴到
Key
字段,最后选择Add SSH key成功添加
此时再进行git clone
只需输入passphrase即可完成下载