使用gitlab 拉取代码的时候报了这个错误:
代码也拉不下来了,当时就想到可能是同事周一离职,账号被关闭导致的,因为我当时本机的公钥是让他帮我设置的,现在他离职了,我的公钥肯定也跟着没了,所以我就又重新设置了一下,设置过程如下:
使用"cat ~/.gitconfig"查看本机git 信息配置
cat ~/.gitconfig
如果信息不是自己的信息需要重新设置一下
1.设置用户名命令如下: ****替换为自己的用户名,是GitLab的登录用户名;
git config --global user.name "****"
2.设置邮箱命令如下:xxx@***.com 替换为自己的邮箱
git config --global user.email xxx@***.com
然后再使用这个命令查看配置是否生效
cat ~/.gitconfig
3.到这个目录下 cd ~/.ssh
,如果目录下有文件id_rsa.pub 或 id_dsa.pub,可以手动编辑成自己的sshkey,也可以使用步骤4的命令,生成新的public key;建议是重新生成
为了保险起见,还是先备份一下原来的文件: cp id_rsa.pub id_rsa1.pub cp id_rsa id_rsa1
然后再删除这两个文件:
rm id_rsa
rm id_rsa.pub
4.使用命令ssh-keygen -t rsa -C "xxx@.com"
– 生成新的public key,xxx@.com对应 .gitconfig文件中的email参数值;
过程中会有三次停顿,第一次是输入文件名字,第二次是输入密码,第三次是再次输入密码确认(无密码可以直接回车,密码不会被显示,直接输入即可)
注意,如果没有执行第三步里面的删除原文件的操作,这一步可能不会顺利执行成功, 需要指定其他文件名才能生成。
5.查看id_rsa.pub文件内容就是SSH key,将文件里面的信息复制到GitLab的Add an SSH key页面,新增一个Keys,Title中可以为该key设置一个别名。
查看命令:cat id_rsa.pub
6.chmod 700 id_rsa
,更改文件的权限,否则在git clone的时候会报“Permissions 0664 for ‘*******/.ssh/id_rsa’ are too open.”的错;
这样就完成了。
最后尝试一下拉代码,可以成功拉取到 master 分支的代码了。
然后发布代码的时候使用jenkins 也出现了这个问题
然后我新增了一下自己的凭证,然后更改了一下服务器上面的git的信息,按照上面的步骤又走了一遍,再刷新一下就没有问题了