Git多用户配置

使用 config 方法解决一台电脑配置两个 gitee 账号的问题

生成密钥

解决同一台电脑生成两份或多份 ssh 密钥、公钥映射两个或多个 GitHub 账号

使用 ssh-keygen 生成 2 组不同邮箱的秘钥对

ssh-keygen -t rsa -C "username1@email.com" -f ~/.ssh/id_rsa_self

ssh-keygen -t rsa -C "username2@email.com" -f ~/.ssh/id_rsa_work

配置多用户的 SSH Keys

  1. 生成两组秘钥
    在.ssh 中生成 2 组秘钥,并设置一个 config 文件

  2. 制作批处理文件
    在.ssh/bat 中设置两个.bat 批处理文件

目录结构大致是这样

.ssh
│  config
│  id_rsa_self
│  id_rsa_self.pub
│  id_rsa_work
│  id_rsa_work.pub
│  known_hosts
│
└─bat
    self.bat
    self.config
    work.bat
    work.config

self 版本

以 self 为例编写脚本
self.config 内容如下

# 个人的gitee公钥
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
# 指定特定的ssh私钥文件
IdentityFile ~/.ssh/id_rsa_self

该文件分为多个用户配置,每个用户配置包含以下几个配置项:

  • Host:仓库网站的别名,随意取
  • HostName:仓库网站的域名(PS:IP 地址应该也可以)
  • IdentityFile:私钥的绝对路径

self.bat 内容如下

copy /d %~dp0\self.config /d %~dp0..\config /Y

work 版本

# 个人的gitee公钥
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
# 指定特定的ssh私钥文件
IdentityFile ~/.ssh/id_rsa_work
copy /d %~dp0\work.config /d %~dp0..\config /Y
  1. .ssh\bat 所在这个目录加入到 windows 的 path 路径中
  2. 使用 cmd 命令行打开,需要工作仓库的时候,在 cmd 命令行内部输入"work"命令。需要切换回个人的时候,就在 cmd 命令行输入"self"命令就行了

通过 ssh-add 添加密钥至 ssh-agent 中

ssh-add ~/.ssh/id_rsa_self

ssh-add ~/.ssh/id_rsa_work

测试配置是否成功

ssh -T git@github.com
ssh -T git@gitee.com

配置多用户的用户名和邮箱

全局信息

一般来说,安装好 git 后,我们都会配置一个全局的 config 信息,就像这样:

git config --global user.name "username" // 配置全局用户名,如 Github 上注册的用户名
git config --global user.email "username@email.com" // 配置全局邮箱,如 Github 上配置的邮箱

重新配置信息

在正式配置之前,我们先得把全局配置给清除掉(如果你配置过的话),执行命令:

git config --global --unset user.name
git config --global --unset user.email

git 的配置分为三级别,System —> Global —>Local。System 即系统级别,Global 为配置的全局,Local 为仓库级别,优先级是 Local > Global > System。

因为我们并没有给仓库配置用户名,又在一开始清除了全局的用户名,因此此时你提交的话,就会使用 System 级别的用户名,也就是你的系统主机名了。

因此我们需要为每个仓库单独配置用户名信息,假设我们要配置 github 的某个仓库,进入该仓库后,执行:

git config --local user.name "username"
git config --local user.email "username@email.com"

执行完毕后,通过以下命令查看本仓库的所有配置信息:

git config --local --list

参考链接:
廖雪峰的官方网站
https://houxin.blog.csdn.net/article/details/105386783

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值