前言
配置多个本地 ssh-key 之前,先初始化下 GIt 环境哦!

可以参照:https://www.cnblogs.com/poloyy/p/12185132.html

执行前两步就好啦

# 本地生成两个 ssh-key

ssh-keygen -t rsa -C "123456@qq.com" -f ~/.ssh/polo_rsa
ssh-keygen -t rsa -C "123457@qq.com" -f ~/.ssh/polo1_rsa

# Github 添加 ssh-key

将生成的两个公钥添加到 Github 中;可以将其中一个公钥添加到账号 A,另一个公钥添加到账号 B,实现在本地可同时提交不同仓库的代码

(如何添加 ssh-key 请查看 https://www.cnblogs.com/poloyy/p/12186087.html

# 生成本地多个公钥的配置文件

在本地 C:\Users\用户名\.ssh 文件夹中生成 config 文件,无需后缀,填入以下内容

# 添加 config 配置文件
# 文件内容如下:
# home
Host polo.github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/polo_rsa
    User polo
# work
Host polo1.github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/polo1_rsa
    User polo1    
# 配置文件参数
# Host : Host 可以看作是一个你要识别的模式,对识别的模式,进行配置对应的的主机名和 ssh 文件
# HostName : 要登录主机的主机名
# User : 登录名
# IdentityFile : 指明上面 User 对应的 identityFile 路径

注意点

  • 红色字体是需要自己根据自己的情况改变的
  • IdentityFile 后面的文件名是要填写你生成的公钥文件名,如下图所示

# 验证是否成功

输入以下命令就行啦

ssh -T git@{Host}
ssh -T git@{Host}

Host 是需要根据自己的定义填写的哈,你在 config 文件中的两个 Host 写了啥这里就写啥就好啦,如下图所示哦

# clone 不同仓库代码

本地单个公钥时,执行 git clone 命令如下

git@github.com:用户名/项目名.git

当有多个公钥时,本地 clone 项目时,需要修改命令

git@polo.github.com:用户名1/项目名1.git
git@polo1.github.com:用户名2/项目名2.git

这样就可以 clone 不同账号下的不同项目到本地咯