1 出现多端配置原因
很多开发者在使用同一电脑的情况下,需要和gitlab、github、自己的公司搭建的gitlab服务器进行交互。
2 配置介绍
配置之前先看下我电脑的ssh目录下的文件。
序号 | 文件名 | 含义 | 备注 |
---|---|---|---|
1 | config | 用来配置多个服务端的配置文件 | |
2 | Id_rsa | 默认生成的私钥 | 这个目前记录的是局域网的gitlab上的公钥和私钥 |
3 | Id_rsa.pub | 默认生成的公钥,公钥和私钥都是成对出现且自动生成 | |
4 | Id_rsa_coding_net | 这个是codingnet私钥 | 这个记录的codingnet 交互的公钥和私钥 |
5 | Id_rsa_coding_net.pub | 这个是codingnet的公钥 | |
6 | known_hosts | 保存交互过的服务端的信息 |
Config文件中的内容如下
#本地测试服务器仓库
Host 192.168.31.185
User ruixule
HostName 192.168.31.185
IdentityFile ~/.ssh/id_rsa
#coding net
Host e.coding.net
User wp-ppa
HostName e.coding.net
PreferredAuthentications publickey
IdentityFile ~/.ssh/id\_rsa\_coding_net
序号 | 参数 | 含义 | 备注 |
---|---|---|---|
1 | Host | 服务端的主机,(ip或者域名) | |
2 | User | 客户端申请的账号 | |
3 | HostName | 服务端的主机,(ip或者域名) | |
4 | PreferredAuthentications | 首选身份验证 | |
5 | IdentityFile | 对应的私钥文件位置 |
3 开始配置
3.1 生成公私钥
这里举例配置github
使用注册github的邮箱配置下
ssh-keygen -t rsa -C "1414100586@qq.com"
接着会提示让你保存公钥和私钥的路径,这里保存在ssh文件目录下。文件名称需和之前的区别开例子:id_rsa_github区分。
C:/Users/Administrator/.ssh/id_rsa_github
查看文件ssh目录
3.2 编辑config文件
3.3 上传公钥
点击id_rsa_github.pub将内容copy到gitlab个人设置的 ssh公钥中。
添加后会让你输入密码进行确认,同时还有邮件告知。
3.4 测试github
创建一个文件夹将该仓库clone下来
添加一个文件
通过git 将该文件推送至远程服务端
可以成功提交到github上,说明配置成功。
3.5 测试 codingnet
切换到codingnet 本地仓库
在README.md增加一句话,可以成功提交。
通过codingnet 远端仓库可以看到文件可以正常上传说明配置成功。
3.6 总结
通过config文件将不同服务端的公私钥,区分开可以配置多个git服务端,且互相不收任何影响。
来源:oschina
链接:https://my.oschina.net/u/4119096/blog/3161929