当前位置 : 主页 > 网络编程 > 其它编程 >

多个github账号时,本地配置sshkey

来源:互联网 收集:自由互联 发布时间:2023-07-02
由于需要,申请了多个账号,但是都是在同一台电脑上操作,原来只有一个账号进行操作时,推送没有遇到什么问题,现在有多个账号了,推送的时候就有点懵逼了,下面是根据网上的
由于需要,申请了多个账号,但是都是在同一台电脑上操作,原来只有一个账号进行操作时,推送没有遇到什么问题,现在有多个账号了,推送的时候就有点懵逼了,下面是根据网上的资料来进行多个账号

由于需要,申请了多个github账号,但是都是在同一台电脑上操作,原来只有一个账号进行ssh操作时,推送没有遇到什么问题,现在有多个账号了,推送的时候就有点懵逼了,下面是根据网上的资料来进行多个账号,在本地配置ssh-key的操作过程。

单个账号的 ssh-key 配置可查看文章:github设置添加ssh

一、本地生成不同账号的秘钥信息ssh-keygen -t rsa -C "xxx1@xx.com"? #账号1ssh-keygen -t rsa -C "xxx2@xx.com" #账号2

邮箱替换成自己github账号的绑定邮箱。

运行上面命令后会让你输入一个文件名,用于保存生成的 SSH key 代码,如:

CopyGenerating public/private rsa key pair.# Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]

如果是只有一个账号的时候,可以默认保存。

多个账号的时候可以在后面输入自己自定义的文件名,用来区分不同账号生成的秘钥。

输入文件名后,回车继续往下会提示你输入密码,可直接回车不输入密码。

多个账号都是同样的操作,操作结束后,就会在 ~/.ssh目录下生成多个秘钥。

二、将公钥添加到不同的github账号上

分别登陆自己github账号,然后将生成的公钥(.pub结尾的文件)添加到对应的账号下:

Settings —> SSH and GPG keys

三、配置 config 文件

单个账号时不需要配置,默认即可,多个账号时进行配置。

查看 ~/.ssh 文件下是否存在 config 文件,不存在的话新建一个,填写对应的配置信息:

Host coder.github.com // 别名HostName github.com // 服务器地址User javage // github用户名IdentityFile ~/.ssh/coder // 对应的秘钥地址Host tester.github.comHostName github.comUser testerIdentityFile ~/.ssh/tester

四、添加 key 信息到 ssh-agent 中

因为默认只读取的默认生成的 id_rsa,为了让他能读取到修改过后的秘钥信息,需要添加到 ssh-agent中:

ssh-add ~/.ssh/coder // 对应的秘钥文件ssh-add ~/.ssh/tester

在执行命令中如果提示:

Could not open a connection to your authentication agent.

需要执行下如下命令:

ssh-agent bash

然后继续执行之前的命令即可。

五、测试是否配置正确ssh -T git@coder.github.comssh -T git@tester.github.com

这里使用的是别名来进行访问,git 可以通过 config 配置的信息来请求对应的账号。

请求成功提示:

$ ssh -T git@coder.github.comHi javaGe! Youve successfully authenticated, but GitHub does not provide shell access.$ ssh -T git@tester.github.comHi testerggf! Youve successfully authenticated, but GitHub does not provide shell access.

克隆项目:

$ git clone git@tester.github.com:testerggf/studygit.gitCloning into studygit...remote: Enumerating objects: 3, done.remote: Counting objects: 100% (3/3), done.Receiving objects: 100% (3/3), done.remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0

多个github账号时,本地配置ssh-key

上一篇:关于FVF
下一篇:没有了
网友评论