场景
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.”