同一个Git平台多个账户使用不同ssh密钥如何配置?

原文:https://360us.net/article/95.html

场景:

使用一个git平台,比如github或者阿里云的云效。

有多个账户或者同一个账户,多个仓库使用不同ssh密钥,由于域名都一样,需要做一些配置才能用上对的密钥。

** 1. 生成ssh密钥到 ~/.ssh**

2. 添加配置 ~/.ssh/config

# 账户1的配置
Host github-account1
    HostName github.com
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_account1

# 账户2的配置
Host github-account2
    HostName github.com
    User git
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_account2
  • HostHostName的别名,自定义。
  • HostName: ssh使用的实际域名或者ip。
  • User:ssh 链接里面的用户名,git ssh链接里面@符号前面的部分。
  • PreferredAuthentications:指定优先使用的身份验证方法,指定为publickey,即使用公钥进行身份认证。
  • IdentityFile:验证使用的私钥。

3. 克隆仓库

这一步的目的是把clone或者已存在仓库里面上游仓库ssh链接里面的主机域名地址替换成上面设置的别名Host

# 克隆账户1的仓库
git clone git@github-account1:username/repo.git

# 克隆账户2的仓库
git clone git@github-account2:username/repo.git

已存在仓库修改上游仓库地址:

# 为账户1设置远程仓库URL
git remote set-url origin git@github-account1:username/repo.git

# 为账户2设置远程仓库URL
git remote set-url origin git@github-account2:username/repo.git

或者修改仓库根目录配置文件.git/config,配置项[remote "origin"]下面的url,替换里面的域名为第二步配置的Host

这一步操作完,git ssh就能通过别名来找到对应的密钥配置了。

4. 测试配置

ssh -T github-account1
ssh -T github-account2

如果看到类似Welcome to xxx的欢迎消息,则说明配置没有问题。

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值