一台电脑配置多个GitHub/GitLab帐号的SSH Key切换

说明

  1. 有时需要在一台电脑上提交到不同的GitHub或GitLab账号上。
  2. 这里直接配置两个ssh key对应不同的账号,如果已经生成一个了,请直接生成第二个即可。

第一步,打开终端,输入以下命令,如下

ssh-keygen -t rsa -C 'xxx@xxx.com'

只需要把邮件地址换成你自己的邮件地址,然后一路回车即可。

第二步,然后会出现Enter file in which to save the key (/Users/luoyu/.ssh/id_rsa)

注意

这里不要回车,输入本次邮箱对应账号要生成的私钥和公钥的名字,然后再回车即可。

如果出现/Users/luoyu/.ssh/id_rsa_luoyu already exists.

Overwrite (y/n)? y

输入:y  (重新覆盖)
输入:n  (不覆盖)

直接覆盖然后使用新的即可。

第三步,会提示你设置密码

这个嫌麻烦的话可以直接回车,然后就会在上面提示的路径下找到刚刚自定义名字的私钥和公钥,如下

image.png

第四步,登录GitHub或GitLab,打开Settings,SSH and GPG keys,添加Key,如下

image.png

image.png

说明

  1. Title随便填。
  2. Key填上生成的id_rsa_luoyu.pub里面的内容。
  3. 到此已经配置成功,拉取代码的时候直接选择ssh方式即可。

第五步,按照上面的步骤,添加第二个账号的ssh key,此处不赘述

第六步,在生成私钥和公钥的路径下创建配置文件config,如下

image.png

Host xxx
  HostName github.com
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa_xxx
Host luoyu
  HostName github.com
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa_luoyu

说明

  1. 原理就是通过使用Host,配置使用指定域名时使用指定的私钥。
  2. Host随自己起名字,最好跟该账号有相关性,后面拉取/提交代码的时候要用到。
  3. HostName为自己的gitlab或者github地址(github的话为github.com)。
  4. PreferredAuthentications固定值。
  5. IdentityFile为自定义生成的私钥的文件路径。

第七步,使用

设置远程仓库或拉取代码的时候,只需要把域名改为该账号自定义Host名字即可,如下

  1. 使用配置的luoyu账号拉取git@github.com:luoyusoft/springboot-demo.git的代码,只需要将地址改成git@luoyu:luoyusoft/springboot-demo.git即可,其他操作不变。
  2. 使用配置的xxx账号拉取git@github.com:luoyusoft/springboot-demo.git的代码,只需要将地址改成git@xxx:luoyusoft/springboot-demo.git即可,其他操作不变。
  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要同时配置GitLabGitHubSSH,你可以按照以下步骤进行操作: 1. 打开终端并进入.ssh文件夹,可以使用以下命令: ``` cd ~/.ssh ``` 2. 查看是否已经存在id_rsa_gitlab和id_rsa_github的公钥文件,可以使用以下命令: ``` ls id_rsa_gitlab.pub ls id_rsa_github.pub ``` 3. 如果公钥文件不存在,你需要生成新的SSH密钥对。可以使用以下命令来生成: ``` ssh-keygen -t rsa -C "[email protected]" ``` 这会在.ssh文件夹下生成一个新的SSH密钥对,并且会要求你提供一个文件名和密码。 4. 复制id_rsa_gitlab.pub的内容,并将其添加到你的GitLab帐户中的SSH密钥设置中。可以使用以下命令复制内容: ``` cat id_rsa_gitlab.pub ``` 5. 复制id_rsa_github.pub的内容,并将其添加到你的GitHub帐户中的SSH密钥设置中。可以使用以下命令复制内容: ``` cat id_rsa_github.pub ``` 6. 配置SSH config文件,以便区分GitHubGitLab。可以使用以下命令编辑config文件: ``` nano ~/.ssh/config ``` 然后按照以下格式添加配置信息: ``` # GitHub Host github.com HostName ssh.github.com User your_github[email protected] PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_github Port 443 # GitLab Host gitlab.com HostName gitlab.com User your_gitlab[email protected] PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_gitlab ``` 注意替换your_github[email protected]和your_gitlab[email protected]为你自己的GitHubGitLab邮箱。 回答完问题后的

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值