SSH连接并不是像http连接一样,输入用户名和密码就可以了。SSH连接需要一些额外的配置
生成SSH秘钥和公钥
查询有效邮箱
首先要确定使用的邮箱,是不是自己认为的邮箱,比如我以为是chenli@sucsoft.com
结果,却发现是399-chenli@sucsoft.com
,那么按照自认为的邮箱申请的keys那自然不会work。——一般情况不会有歧义邮箱出现,但我这边确实跟想的不太一样
查询方法(一)——新建项目
创建空的仓库,提示中提及的邮箱就是有效邮箱
查询方法(二)——个人Preference
- 打开
User Settings->Profile
,其中有Email
、public email
和commit email
三个邮箱,其中跟我们开发命令比较有关的就是这个Commit Email,之前我的默认是399-chenli@sucsoft.com
,这边要设置自己想要的,比如chenli@sucsoft.com
▲选择完成后,滑到最下面选择Update profile settings
- 打开
User Settings->Emails
可以看到,chenli@sucsoft@sucsoft.com
的标签中有commit email,即设置成功
Gitlab设置公钥
确保邮箱是有效的后就可以生成秘钥了。
- 设置git信息
1 | # 1. 设置git信息 |
根据命令输出结果可以看到,生成的结果在C:\Users\mrli\.ssh
路径下,有id_rsa
、id_rsa.pub
,其中id_rsa.pub
为公钥。
-
将SSH公钥添加到GitHub账户
- 复制文件路径内.pub后缀里的内容
- 进入SSH Keys的设置页面(登录GitHub,在右上角头像点击设置)
- 粘贴后,Title会自动提取生成,点击
Add key
则完成添加
测试
1 | $ ssh -T git@gitlab.sucsoft.com |
More
配置多个Git信息
- 将默认的
id_rsa
和id_rsa.pub
改成指定的如id_rsa_sucsoft.pub
.ssh/
路径下添加config
配置文件,对应填写
1 | Host github.com |
注意:Host后写的就是ssh -T git@gitlab.sucsoft.com
中@后面的内容,如果写的是sucsoft
,则写成ssh -T git@sucsoft
,但是这样其实跟Gitlab页面中直接提供的不一样: git@gitlab.sucsoft.com:suc-frame/xxxx.git
,所以最好还是规范的写gitlab.sucsoft.com
★配置完成后最终文件夹中的内容:
注: known_host是自动生成的,如果第一次SSH连接网站,则会将host添加到这个文件中
Author: Mrli
Link: https://nymrli.top/2022/02/25/私有Gitlab配置SSH连接/
Copyright: All articles in this blog are licensed under CC BY-NC-SA 3.0 unless stating additionally.