赞
踩
大家好,很开心跟大家分享,git ssh key的多账号管理。写这篇文章的起因是我公司使用的gitlab,个人使用的github,这两者的邮箱不同,ssh key 也不同,生成第二个git的key的时候会覆盖第一个的key,必然有一个用不了。百度一大波,终于搞定!
其实在~/.ssh目录下新建一个config文件配置一下,就可以解决问题。详细步骤跟大家讲一下:
第一步:生成ssh key ,github 使用邮箱user1@126.com、gitlab使用邮箱user2@126.com举例,各位可以改成自己的,在命令行(或者cmder)输入 ssh-keygen -t rsa -C "user1@126.com" , 回车,并给存放可以的文件命名为id_rsa_hub,接着两个回车,github公钥私钥生成。
输入 ssh-keygen -t rsa -C "user2@126.com" , 回车,并给存放可以的文件命名id_rsa,接着两个回车,gitlab公钥私钥生成。
第二步:查看以上两对公钥私钥
第三步:sublime打开id_rsa_hub.pub,复制备用,登录github,找setttings,ssh key ,添加这个公钥,同理打开id_rsa.pub登录gitlib,添加公钥。
第四步:创建并修改config文件 ,命令行输入touch config,添加以下内容,特别注意,缩进行,只能缩进一行。
第五步:如果之前有设置全局用户名和邮箱的话,需要unset一下,可通过$ git config --list来查看全局配置,
$ git config --global --unset user.name $ git config --global --unset user.email
第六步:测试,如果没有known_hosts文件,会报错哦,可以在测试的时候,输入yes生成。
$ ssh -T git@github.com #输出:Hi user1! You've successfully authenticated, but GitHub does not provide shell access. $ ssh -T git@gitlab的IP #输出:Hi user2@163.com**, this is git@.....
测试成功。 如果出什么问题,可以通过ssh -vT git@github.com
来输出编译信息,然后根据编译信息去解决问题。
小知识分享--------
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。