一台电脑配置多个ssh key(不同的多个邮箱ssh key,多git账号,智能选择对应的ssh key) | 您所在的位置:网站首页 › 所有邮箱图标一样吗 › 一台电脑配置多个ssh key(不同的多个邮箱ssh key,多git账号,智能选择对应的ssh key) |
同一个人在不同电脑上用不同的账户同步同一个git库代码完全没有问题 多个人同一台电脑上有多个git库用不同git账号同一个ssh key同步一个或多个git库代码也没有问题 如果多个人用同一台电脑,且需要不同的认证或同一个电脑连接两个不同的github账号(多个ssh key对应不同的git库且能智能选择) 这里的git库可能是同一个服务的库(多个github库),可能是多个完全不同的库(github有,gitlab也有,公司的还有) 重要:如果只是想要不同的git邮箱和用户名只需要在每个git的工程里面的配置文件中修改即可,就是不要配置全局的。看清自己的需求是否是上面描述的是否需要下面的操作。 1. 生成多套ssh key ssh-keygen -t rsa -C "不同的邮箱们" 这里不同于默认全部回车直接生成id_rsa,这里要给不同的git账号(邮箱)起不同的名字,比如id_rsa_github,别的没区别。这样就会有多套key 2. 让这些key生效,ssh-add -K ~/.ssh/id_rsa 不知道重启要不要重新弄。。。 如果出现Could not open a connection to your authentication agent. 先这个:ssh-agent bash(win下的话eval `ssh-agent`) 可以用这个删除所有key:ssh-add -D 查看key的情况:ssh-add -l 2. 不同的id_rsa.pub同样需要添加到各自的网站里面哈 3. 修改ssh config文件 如果没有就创建。~/.ssh/config 内容是这样的,对于每一个git账号(邮箱)都是这样,有几个账号就写几套这个东西: Host github.com # 主机名字,这个随便起一个名字就好了 HostName github.com # 主机名,有域名的写域名,没域名的写ip,如果写ip下面可以加一条Port 22这种端口信息。 User git # 用户名,这个其实要看你的git的ssh协议的用户名,一般是git,也可能是别的 IdentityFile ~/.ssh/id_rsa.pub # 公钥文件,这个就要对应写上刚刚生成的那些个公钥。 4. 删除本地全局设置 如果之前设置过git config -global user.name 和 user.email要用git config -global unset user.name 和 user.email删除掉,或者直接把用户目录下的.gitconfig文件删除,然后为每个仓库设置独立的用户名和邮箱,就是在仓库里面用上面的命令不要global选项 5. 非常重要: 以上步骤我在我的电脑上重复了多次都没有成功,看了所有的教程发现我的做法好像没有问题,但是不知道为什么,有大大可以指教的话指教一下,不过当然我其实没有这种需求,所以果断先放下这个,好好工作。 |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |