配置两个SSH Key用于工作和私人

本文介绍了如何配置两个SSH Key,分别用于工作和个人的GitHub账户。详细步骤包括生成SSH Key、添加公钥到对应平台、配置config文件以及切换用户。在过程中可能会遇到自动切换账号的问题,文中也提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置git用户名和密码

git config --global user.name "xm"
git config --global user.email "xm@mail.com"

配置本地Repo的用户名和密码

git config  user.name "xm"
git config  user.email "xm@mail.com"

生成两个SSH Key

ssh-keygen -t rsa_company -C "your company email@mail.com"
ssh-keygen -t rsa_github   -C "your self email @mail.com"

检查你的ssh key是否生成成功 ,通常路径在:

window下ssh的路径: /c/Users/xxxx/.ssh/id_rsa.pub
linux下ssh的路径:~/.ssh/id_rsa.pub
mac下ssh的路径:~/.ssh/id_rsa.pub

添加两个pub key到对应平台上

配置config文件

新建config 文件在.ssh目录下,用来指定不同的用户读取的rsa文件

# 若.ssh目录下无config文件,那么创建
touch config

# config文件中添加以下内容
# 比如gitlab 
Host gitlab.com   ## Host 这个指明的是HOST地址,也就是项目的HostName,如:git@gitee.com:ghostgithub/xUtils.git   gitee.com就是其对应的Host(访问的项目的地址)
HostName gitlab.com  ## HostName 就是访问的地址,如:https://gitlab.com/   就是其HostName(IP地址,访问的码云的网页上的url地址)  (https://建议不要加上)
PreferredAuthentications publickey  ## 指明配置的是公钥
IdentityFile ~/.ssh/rsa_company

# gitlab
Host gitlab.com
HostName gitlab.com  
PreferredAuthentications publickey
IdentityFile ~/.ssh/rsa_gitlab

# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/rsa_github

切换用户

// 这里就用到了配置文件中的host对应的字段

ssh -T git@github.com 

出现如下表示成功

Hi x x x! You've successfully authenticated, but GitHub does not provide shell access.

加 -v 表示输出debug信息

遇到问题

切换github 账号成功: ssh -T git@github.com
但是切换回公司帐号失败:

解决
不过我拉取和提交代码时又会自动切换。。。

引用

[1] https://segmentfault.com/a/1190000008462401

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值