为一台电脑配置多个git账户

本文详细介绍了如何在同一台电脑上配置多个Git账户的方法,包括设置全局用户名和邮箱、生成及管理SSH密钥对、配置config文件等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为一台电脑配置多个git账户

可以先设置全局的用户名和邮箱


git config --global user.name "用户名"
git config --global user.email "邮箱"

将原先生成的公钥私钥全部删除

C:\Users\用户名\.ssh文件内

生成第一个仓库的公钥密钥

  1. 进入到C:\Users\用户名\.ssh右键打开Git Bash
  2. 执行ssh-keygen -t rsa -C "你的邮箱地址"
    • 此时会让你选择是否为生成的文件重命名或者设置密码,一般第一个为设置文件名,后续的直接回车跳过即可
  3. 这时候你的ssh文件下就会多出两个存放密钥的文件
  4. 重复2操作生成第二个仓库的密钥
    • 此时文件下有4个存放密钥的文件

添加私钥

  1. 执行ssh-agent命令
  2. 添加私钥
# 例如:
ssh-add ~/.ssh/id_rsa_github   #这个为你存放密钥的文件名
ssh-add ~/.ssh/id_rsa_yvnxiao

注:如果遇到Could not open a connection to your authentication agent.

依次执行如下命令:

  1. ps aux | grep ssh
  2. kill -9
  3. exec ssh-agent
  4. eval ssh-agent -s

然后再添加私钥

# 例如:
ssh-add ~/.ssh/id_rsa_github   #这个为你存放密钥的文件名
ssh-add ~/.ssh/id_rsa_yvnxiao

配置config文件

在ssh文件下执行touch config生成config文件

config内容如下

# gerrit
Host gitool.glanway.com
HostName gitool.glanway.com  # 仓库域名
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gerrit  # 你的私钥文件
User 用户名

# github
Host github.com
HostName github.com  # 仓库域名
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github # 你的私钥文件
User 用户名

添加公钥

这一步就只是将你的公钥添加到仓库的SSH就行

测试连接

ssh -T git@github.com          #测试github
### 配置多个 Git 账户 为了在同一台电脑上配置多个 Git 账户,特别是当个人项目托管于 GitHub 和工作项目托管于其他平台(如 GitLab 或 Gerrit)时,可以通过 SSH Key 的方式实现多账户管理。 #### 创建并命名多个 SSH 密钥对 对于每一个需要访问的不同 Git 平台,都需要生成独立的 SSH 密钥对。例如: ```bash ssh-keygen -t rsa -b 4096 -C "your_github_email@example.com" -f ~/.ssh/id_rsa_github ssh-keygen -t rsa -b 4096 -C "your_company_email@example.com" -f ~/.ssh/id_rsa_company ``` 上述命令会分别创建用于 GitHub 和公司私有仓库的身份验证密钥[^1]。 #### 修改 `~/.ssh/config` 文件来区分这些密钥 编辑或新建用户的 `.ssh/config` 文件,在其中定义每一对公私钥对应的主机名和服务地址: ```plaintext Host github.com HostName github.com User git IdentityFile ~/.ssh/id_rsa_github Host gerrit.example.org HostName gerrit.example.org User git IdentityFile ~/.ssh/id_rsa_company ``` 通过这种方式指定特定域名下使用的身份文件[^4]。 #### 设置全局与局部用户信息 先设定默认的全球范围内的用户名和电子邮件地址作为一般用途;之后再针对具体项目目录单独调整这些属性以便匹配相应的远程库要求。 ```bash git config --global user.name "Global Name" git config --global user.email "global@email.com" cd /path/to/work/repo/ git config user.name "Work Name" git config user.email "work@email.com" cd /path/to/personal/repo/ git config user.name "Personal Name" git config user.email "personal@email.com" ``` 这样就完成了基于路径差异化的个人信息配置[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值