Git 多账号多仓库配置 SSH

前言

  • 在我们使用 Git 中,有时候会遇到多账号多仓库的情况,比如公司的 GitLab 和 GitHub,以及自己的 GitHub,这时候我们就需要配置多个 SSH 密钥来区分不同的账号和仓库

生成 SSH 密钥

  • 根据你注册仓库的邮箱生成 SSH 密钥,如果你没有注册仓库,记得先在 Github 或者码云上注册一个,然后再生成 SSH 密钥
ssh-keygen -t rsa -C "你的仓库注册邮箱"

# 例如:ssh-keygen -t rsa -C "biaov@qq.com"
  • 输入你的文件名,如果你不知道,那就建议设置成你的邮箱前缀,这样方便你管理,例如:biaov
  • 回车继续设置密码,如果你不想设置密码,那就直接回车,这样就不会设置密码了
    • 建议这里不要设置密码,直接回车,这样以后你也不用再输入密码了
  • 再次输入密码同理,回车

在这里插入图片描述

  • 生成成功后,会在你的用户目录下生成一个 .ssh 文件夹,里面有两个文件,一个是私钥,一个是公钥,我们只需要公钥就可以了,私钥不要泄露给别人,否则别人就可以访问你的仓库了
    • biaov: 私钥
    • biaov.pub: 公钥

仓库配置 SSH 密钥

  • 登录你的仓库,找到 SSH 密钥配置,将公钥复制进去,保存即可
  • 这里以 GitHub 为例,其他仓库也是类似的
  • 复制 biaov.pub 文件的内容,粘贴到 GitHub 的 SSH 密钥配置中,然后保存即可

在这里插入图片描述

本地配置 .ssh 文件

  • 因为它需要根据你的配置来识别你的私钥,所以我们需要在本地配置一下,这样就可以识别你的私钥了
  • 在你的 .ssh 文件夹下,新建一个 config 文件,然后输入以下内容:
    • .ssh: C:\Users\Administrator\.ssh - windows
    • Host: 你的仓库域名,例如:github.com, 如果是相同域名不同账号,则拼接 - 区分,例如:github.com-biaov2017
    • User: 你的仓库用户名,例如:biaov
    • HostName: 你的仓库域名,例如:github.com
    • IdentityFile: 你的私钥路径,例如:C:/Users/Administrator/.ssh/biaov
    • PreferredAuthentications: 你的认证方式,例如:publickey
Host github.com
  User biaov
  HostName github.com
  IdentityFile ~/.ssh/biaov
  PreferredAuthentications publickey

Host github.com-biaov2017
  User biaov2017
  HostName github.com
  IdentityFile ~/.ssh/biaov2017
  PreferredAuthentications publickey

Host gitee.com
  User biaov
  HostName gitee.com
  IdentityFile ~/.ssh/biaov
  PreferredAuthentications publickey

克隆代码

  • 仓库地址设置对应的域名
git clone git@github.com:biaov2017/demo.git
# 或者
git clone git@github.com-biaov2017:biaov2017/demo.git
  • 如果你已经克隆了代码,那么你需要修改一下 git 配置
  • 打开 git 配置文件: 项目目录/.git/config
[remote "origin"]
	url = git@github.com:biaov2017/demo.git
# 替换为
[remote "origin"]
  url = git@github.com-biaov2017:biaov2017/demo.git

这样你就可以多账号多仓库使用 Git 了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

biaov

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值