Gitlab配置ssh key

前言

入职--分配邮箱以及gitlab权限--需要进行重新ssh配置

开始

  1. 打开git bash,输入一下命令生成ssh私钥和公钥对

    	ssh-keygen -t rsa -C '[email protected]'  //然后一路回车(-C 参数是你的邮箱地址)
    

    Gitlab配置ssh key_第1张图片

  2. 然后打开/.ssh/id_rsa.pub文件(表示用户目录,比如我的windows就是C:\Users\Administrator),复制其中的内容(比如可以使用记事本打开)

  3. 打开gitlab,找到Profile Settings–>SSH Keys—>Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框,在Title对应的文本框中给这个sshkey设置一个名字,点击Add key按钮
    Gitlab配置ssh key_第2张图片

  4. 到此就完成了gitlab配置ssh key的所有步骤,就可以使用ssh协议进行代码的拉取以及提交等操作了,就不需要输入密码了

本地配置多个ssh key

大多数时候,我们的机器上会有很多的git host,比如公司gitlab、github、oschina等,那我们就需要在本地配置多个ssh key,使得不同的host能使用不同的ssh key ,做法如下(以公司gitlab和github为例):

1、为gitlab生成一对秘钥ssh key
ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/gitlab-rsa
2、为github生成一对秘钥ssh key

ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/github-rsa

3、在~/.ssh目录下新建名称为config的文件(无后缀名)。用于配置多个不同的host使用不同的ssh key,内容如下:

# gitlab
Host gitlab.com
    HostName gitlab.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/gitlab_id-rsa
# github
Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_id-rsa
  ​
# 配置文件参数
# Host : Host可以看作是一个你要识别的模式,对识别的模式,进行配置对应的的主机名和ssh文件
# HostName : 要登录主机的主机名
# User : 登录名
# IdentityFile : 指明上面User对应的identityFile路径

4、按照上面的步骤分别往gitlab和github上添加生成的公钥gitlab_id-rsa.pub和github_id-rsa.pub,再次执行git命令验证是不是已经不需要再次验证权限了

5、再次查看~/…ssh目录下的文件,会有gitlab_id-rsa、gitlab_id-rsa.pub和github_id-rsa、github_id-rsa.pub四个文件

总结

我们为什么要使用ssh协议呢?因为ssh更加安全,然后更加方便,比如我们公司的gitlab由http协议换成了https协议,
那么如果你是使用http协议管理代码,那么需要修改所有的项目中的git地址变成https,这会把我们给逼疯的!
但是如果我们一开始就是用ssh协议,这不需要任何的修改,简直不能再爽一点了。

文档参考:https://www.cnblogs.com/hafiz/p/8146324.html

你可能感兴趣的:(前端,github)