linux使用git添加私钥“Could not open a connection to your authentication agent.”

1,290 阅读1分钟

场景

linux环境下,一个项目在使用git提交时提示需要输入密码。但该项目在之前已经做过git配置,使用git config --list查看,用户名、email, remote path这些配置已然都在。考虑可能是添加过的私钥丢失了(丢失原因尚不清楚,似乎每次重新登录开发机,都会不见),解决办法就是把私钥加回来。

~/.ssh/目录下查看,id_rsa_xxx文件还在,无需再重新生成,如果rsa不存在要重新生成。

直接执行ssh-add ~/.ssh/id_rsa_xxx,提示Could not open a connection to your authentication agent.

解决办法

需要ssh-agent启动bash,或者说把bash挂到ssh-agent下面

ssh-agent bash  
ssh-add ~/.ssh/id_rsa_xxx

执行ssh-add后会提示Identity added: /home/xxxx/.ssh/id_rsa_xxx (/home/xxxx/.ssh/id_rsa_xxx),表示添加成功

再回到项目目录,拉代码、提交代码已不再需要密码。

参考:

Could not open a connection to your authentication agent

解决cygwin下的“Could not open a connection to your authentication agent.”

win下给 Git Bash 添加私钥时ssh-add报错的解决办法