git客户端通过ssh协议拉取代码需要密码
背景:
在给学生做git项目管理培训的时候,出现已经把公钥给到了远程仓库,但是拉取代码的时候确出现了需要输入密码的提示,我们正常不是只需要把公钥给到远程仓库,然后就可以直接通过ssh协议拉取代码了吗,为何我确提示要输入密码呢?于是带着这个问题排查两天,百度和git学习群都没有遇到过解决这个问题的办法,于是自己灵机一动,想到了git服务器可能需要重启服务刷新配置才能解决。
提示如下:
这里提示让我输入远程仓库的密码,但是我已经将本机的公钥给到了远程仓库
解决办法:
1、首先查看是否能通过ssh协议免密连上远程仓库机器
$ ssh -T git@git远程仓库IP
这样表示连接成功,如果不成功,做第二步操作
2、重启远程仓库的gitlab服务
[root@gitlab-53 .ssh]# /etc/init.d/gitlab restart
Removing stale Sidekiq job dispatcher pid. This is most likely caused by Sidekiq crashing the last time it