参考链接:如何在一台电脑配置GitHub和gitlab的SSH

在工作中,很多小伙伴在一台电脑上使用不止一个Git账号,例如:自己的个人的GitHub账号,公司的GitLab账号等。在代码 clone、pull、push时,如果使用HTTPS通信,那么git账号之间不会有冲突,但是每次都需要输入账号密码,较为繁琐。并且当代码库规模较大时,采用HTTPS方式,可能会出现超时不响应的情况,因此需要配置SSH。SSH在配置完SSH key后使用很方便,但同一台电脑上使用多个git账号会产生冲突,为此需要配置SSH以支持多账号。

第一步
在.ssh文件夹下创建一个config 文件(注意没有后缀)文件中大致可配置如下字段:

Host:用来替代将要连接的服务器地址。当ssh的时候如果服务器地址能匹配上这里Host指定的值,则Host下面指定的HostName将被作为最终的服务器地址使用,并且将使用该Host字段下面配置的所有自定义配置来覆盖默认的`ssh_config`配置信息。
Port:自定义端口
User:用户名
HostName:真正连接的服务器地址
PreferredAuthentications:指定优先使用哪种方式验证,支持密码和秘钥验证方式
IdentityFile:指定本次连接使用的密钥文件

该文件的主要作用就是指明各个git帐号对应的User以及IdentityFile的文件位置。

在该文件中添加如下文件内容

# gitlab
Host gitlabHostName ssh.gitlab.comIdentityFile ~/.ssh/id_rsa# github
Host github.comHostName ssh.github.comUser xxx@163.comPreferredAuthentications publickeyIdentityFile ~/.ssh/id_github_rsaPort 443

第二步
1、按照公司Git代码仓库文档生成密钥对,并添加秘钥。

ssh-keygen -t rsa -C "xiaoming@qq.com"

之后就会在~/.ssh下面生成两个文件:
私钥 id_rsa.
公钥 id_rsa.pub
在GitLab上添加SSH key。执行命令查看公钥:cat ~/.ssh/id_rsa.pub

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDlMB9hScN5EUT96wEtcS5wsoCRk6OSw0Zf5d7z/YUOToo4kNcs9glVD7K28Qj2PGRM7EeOM0NIpwx6ZO2ZARftzenm5/+fkXLprRUvGFjUnTIZ/aYT6po4cjh+/WCbg0xz02+KKDvHNRjbNmLWm8p4g8r0RpCXmKnR36i8NGRe70lw9wL/MwCzpGwXg6Zjoc1ganfsOvlCED7c+qy9uOb0KjvgxUeMprERTMZgStoOYjm2TdKjbpyAbUFkG51FKyZfXlmuNoAC/Vvaqk8YsCdhCvUVUN1/QmXNSL322acwWoC1V5/mK4hPZzBIJAcZe0Wbou8gAmA3VFgI4/z1RYs9o/7zJr53GbXjzEyrYiTQ5L32MfiVCu9csF4dW8hkk0gmjrNPk88n2nIqTpZvp+E/OL32HUTpqfCaS/mq//TOQUgGHYXh2vq9Hs6+o3QwOYoPPodi2rDdTePFvn02PGoYnER9C7W14YKirsAu1KYfcFnExOj92k5j/vW08YpU2xU= leo.li@hongjingdrive.com

打开gitlab的找到User Settings下的SSH Keys,在Add an SSH key中,复制 id_rsa.pub中的内容或上图中查询到的密钥到key这里,在title这里给这个key设置一个名字,点击Add key就完成了。

2、按照GitHub的生成秘钥的文档进行秘钥生成:

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

在需要输入文件名时输入 id_github_rsa 来生成GitHub秘钥对。

Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter]

然后按照GitHub的文档,来添加秘钥

https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

检查是否成功:

ssh -T git@github

如何同时配置GitHub和gitlab的SSH相关推荐

  1. git配置远程仓库,同时配置github、gitee、gitlab,完美解决方案

    git同时配置github.gitee.gitlab 清除 git 的全局设置(针对已安装 git) 生成新的 SSH keys 1)GitHub 的钥匙 2)GitLab 的钥匙 3)Gitee 的 ...

  2. mac 如何快速生成SSH key,配置github SSH公钥连接(解决git push 413问题)

    来源:掘金 作者:老表 一.说一说 了解这个的起因是今天git push的时候遇到报错error: RPC 失败.HTTP 413 curl 22 The requested URL returned ...

  3. Tower 用 SSH key 与 GitHub、GitLab、https通信

    GitHub:(样式一) 1.如果是外网的项目,直接选择相应平台(这里以GitHub为例子),输入用户名密码. 2.然后右边出现自己网上的项目,点击克隆到本地就可以了. 3.上传提交代码至github ...

  4. 初次使用git配置以及git如何使用ssh密钥(将ssh密钥添加到github)

    初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git config --global use ...

  5. github和gitlab仓库一起使用

    github是网络公有代码仓库,一般用于私人代码托管,而gitlab一般是企业搭建的内部代码仓库.工作期间,我们都会同时用到这两个仓库.可公司邮箱与个人邮箱是不同的,由此产生的 SSH key 也是不 ...

  6. Centos/Red Hat6.8 安装、配置、启动Gitlab (内网环境)心得分享

    文章目录 一.Gitlab下载 1. Gitlab官网下载 二.分析思路 2.1. 分析 2.2. 代码托管平台 2.3. 镜像站 二.Gitlab 重新加载配置异常 2.1. 异常现象 2.2. 分 ...

  7. [Git] 配置Github Gitee reference加速

    配置 Github & Gitee & reference加速 一.注册公钥到Github https://github.com/settings/keys 生成public key ...

  8. Gti版本控制系统Github与Gitlab的使用

    目录 一.Git.Github.Gitlab 的区别 二:Git介绍 1.Git 与 SVN 区别 2.Git工作流程 三.git安装 1.yum安装 2.Windows 平台上安装 3.Mac 平台 ...

  9. GitHub+Git+Gitlab的一些记录

    title: GitHub+Git+Gitlab的一些记录 夜阑卧听风吹雨,铁马冰河入梦来.铁马是你,冰河也是你. GitHub 第三方托管平台 初始化仓库. readme.md (md为markdo ...

最新文章

  1. linux系统管理必备知识之关机命令
  2. MySQL使用 IN 查询取出数据排序问题(与in排序相同、不排序)
  3. 【文文殿下】快速傅里叶变换(FFT)学习笔记
  4. “老四”网易云音乐急上市:一个音乐APP的终点站?
  5. DataGrip 2019.2.5 —— 中文列名(字段名)(columns name)乱码问题解决方案
  6. 无悔入华夏怎么一直显示服务器,无悔入华夏完整版
  7. JS引擎、运行时与调用栈概述
  8. react-native 模仿原生 实现下拉刷新/上拉加载更多(RefreshListView)
  9. 北大oj-1423- Big Number
  10. 报童模型(2)--经济学含义和应用
  11. JAVA 生成随机数两种方式
  12. iPad 上播放 2160p (4K) mkv 视频的方法
  13. 关于Android P Auto锁屏Global.DEVICE_PROVISIONED
  14. 女生学python工作累吗_数据分析师女生做累么 工资一般多少
  15. 230个形容人性格的英语词汇
  16. DirectPlay分组功能 (转)
  17. qlv文件怎么打开 怎么把qlv文件转换成MP4的文件呢
  18. 漫话:什么是平衡(AVL)树?这应该是把AVL树讲的最好的文章了
  19. Java对接HJ212协议设备
  20. InvalidDefinitionException: No serializer found for class... 因为没有给对象写get、set方法

热门文章

  1. Miller Rabin算法:大质数判断
  2. 纹理特征描述之灰度差分统计特征(平均值 对比度 熵) 计算和比较两幅纹理图像的灰度差分统计特征 matlab代码实现
  3. k8s中的endpoint
  4. Echarts数据可视化event图表事件的相关操作,开发全解+完美注释
  5. padding卷积的两种方式“SAME”和“VALID”
  6. python实现将子文件夹下的图片复制到新的文件夹并重命名
  7. Matlab报错警告: 启动 Connector 时出现问题及解决方案
  8. CrackMe011
  9. Angular4.X 介绍
  10. 【微信小程序】——wxss引用外部CSS文件及iconfont