有时候一台电脑上需要配置不止一个 Git 用户,若不注意,可能会在提交的时候产生一些冲突,从而不能正常提交。
前段时间我也遇到了这种问题,最后总算解决了,在此做个小结。
PS: 该命令为 macOS 系统下的,其他操作系统可能会有些差异。
添加第一个 Git 用户,大体操作步骤如下:
- 配置用户名和邮箱
git config --global user.name “user1"
git config --global user.email “user1@*mail.com”
- 生成公钥&密钥对
ssh-keygen -t rsa -C "user1@*mail.com"
Enter file in which to save the key (/Users/***/.ssh/id_rsa): id_rsa_user1
// 之后连续回车即可
- 添加密钥路径
ssh-add ~/.ssh/id_rsa_user1
成功提示:
Identity added:/Users/***/.ssh/id_rsa_user1(/Users/***/.ssh/id_rsa_user1)
- 获取公钥内容(
~/.ssh
目录下)
cat id_rsa_user1.pub
通过该命令获取公钥内容,复制即可。
添加第二个用户的步骤与第一个基本一致。需要根据实际情况修改用户名和邮箱,以及密钥的名字,以进行区分。
接下来配置 ~/.ssh/config
的内容。
打开 ~/.ssh/config
文件(若无则新建)。参考配置如下:
# GitHub 账户
Host PHOENIX
HostName git.github.com
User user1
IdentityFile ~/.ssh/id_rsa_user1
# Coding.net 账户
Host PHOENIX
HostName git.coding.net
User user2
IdentityFile ~/.ssh/id_rsa_user2
配置说明:
# Host: 主机
# HostName: 远程仓库
# User:远程仓库账户名字
# IdentityFile:SSH 密钥的路径
# 其中,配置主机的举例:
# 例如,对于远程仓库 git@github.com:user1/Demo.git
# 可以将地址改为 git@【Host】:user1/Demo.git
# 即:git@PHOENIX:user1/Demo.git
# 使用起来更简洁
这样配置以后,就可以在同一台电脑上配置多个 Git 账号了。提交的时候切换下用户名和密码就行了。