GitLab中配置SSH key

一.概述

很多公司现在git作为代码版本控制工具,然后自己搭建私有的gitlab来管理代码,我们在clone代码的时候可以选择http协议,当然我们也可以使用ssh协议来拉取代码。

为什么GitLab需要SSH Key呢?因为Git Lab需要识别出你推送的提交确实是你推送的,而不是别人冒充的。而GitLab只要知道了你的公钥,就可以确认只有你自己才能推送。ssh形式要弄生成配置ssh密钥,有本地Windows电脑生成配置的,有在服务器Git命令生成配置的。

当然,GitLab允许你添加多个Key。假定你有若干个电脑,你一会儿在公司提交,一会儿在家里提交,只要每台电脑的key都添加到GitLab,就可以在每台电脑上往GitLab推送了。其他操作都和GitHub是一样的了。

二.解决方法

1.确认本地密钥

SSH 秘钥默认储存在账户的主目录下的 ~/.ssh 目录 (也就是本地电脑C盘你的账户下)

  如:C:\Users\BF100400\.ssh\

  查看是否包含id_rsa和id_rsa.pub(或者是id_dsa和id_dsa.pub之类成对的文件),有.pub 后缀的文件就是公钥,另一个文件则是密钥。

  如果有这两个文件,则跳过1.2;如果没有这两个文件,甚至.ssh目录也没有,则需要用ssh-keygen 来创建 

2.生成密钥信息

  • 在.ssh 目录下右键打开Git Bash(.ssh目录不存在,则在任一目录下操作,或者手动创建该目录)

ssh-keygen -t rsa -C "[email protected]"

直接Enter就行,然后会提示输入密码(可输可不输)

GitLab中配置SSH key_第1张图片

  • 执行完成之后,在.ssh 目录下就会生成秘钥文件(没有.ssh目录的会自动生成,手动创建的则不会重复生成)

GitLab中配置SSH key_第2张图片

在~/.ssh/下会生成两个文件,id_rsa和id_rsa.pub

  id_rsa是私钥

  id_rsa.pub是公钥

 

3.查看密钥

打开本地git bush,使用下列命令生成ssh公钥

进入.ssh目录

cd ~/.ssh

回车

ls

查看key值

cat id_rsa.pub

GitLab中配置SSH key_第3张图片

4.复制key值添加到GitLab

打开gitlab,找到Profile Settings-->SSH Keys--->Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框,在Title对应的文本框中给这个sshkey设置一个名字,点击Add key按钮

GitLab中配置SSH key_第4张图片

 

到此就完成了gitlab配置ssh key的所有步骤,我们就可以愉快的使用ssh协议进行代码的拉取以及提交等操作了

 

 

 

 

 

 

 

你可能感兴趣的:(gitlab,git,github,ssh)