概述
在克隆仓库或推送更新到相关仓库时,有时会出现如下错误:
sign_and_send_pubkey: signing failed: agent refused operation
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-keygen -o -t rsa -b 4096 -C "your.email@example.com"
使用该命令会产生新的密钥,使用提供的邮箱作为标签
Generating public/private rsa key pair.
代理
后台开启SSH代理
eval "$(ssh-agent -s)"
添加密钥到代理
ssh-add
如果你的密钥不是某人命名
ssh-add ~/.ssh/my_other_key
添加-l
参数,可以查看所有已经添加的身份列表。
服务器
将公钥复制到远程主机
ssh-copy-id userserver@12.345.67.89
ssh-copy-id username@hostname
测试连接
ssh -vT git@github.com