Git单工作站多账户配置

很多时候程序员都会有多个Git账户, 也许你想要把工作和个人开发账户分开, 这个时候就涉及到在同一个工作站(主机)上对多个Git账户进行操作. 我参考了很多做法, 找到了目前的一个解决方案. 不是太完美, 因为实测过程中发现需要在每个项目第一次使用时配置一次用户名和邮箱.

更多关于Git的文章可以查看我的Git栏目

首先, 我们先假设我们需要配置的两个Git账户如下:

账号 username email 网站
1 alice alice@gmail.com Gitlab
2 bob bob@163.com GitHub

1. 生成公私钥

使用管理员身份运行Git Bash:

## 1) 生成alice在Gitlab上的公私钥文件
ssh-keygen -t rsa -f ~/.ssh/id_rsa_gitlab -C "alice@gmail.com" 

## 2)生成bob在GitHub上的公私钥文件
ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C "bob@163.com" 

执行完这两个命令后可以在C:\\用户\\<username>\\.ssh路径下找到4个文件, 分别是两个账户的公钥和私钥.

序号 文件名 含义
1 id_rsa_gitlab alice的私钥
2 id_rsa_gitlab.pub alice的公钥
3 id_rsa_github bob的私钥
4 id_rsa_github.pub bob的公钥

2. 配置公钥

分别登录进入Gitlab和GitHub进行公钥的配置. 在设置中找到SSH Key的相关设置, 点击New SSH key, 将公钥文件中的内容复制添加到里面.

3. 激活公钥

在Git Bash中执行:

Gitlab

## 1) 激活公钥
ssh -T git@gitlab.com -i ~/.ssh/id_rsa_gitlab

## 2)授权
yes

GitHub

## 1) 激活公钥
ssh -T git@github.com -i ~/.ssh/id_rsa_github

## 2) 授权
yes

4. 添加私钥文件

## 1) 打开服务
eval `ssh-agent`
## 2) 添加Gitlab
ssh-add ~/.ssh/id_rsa_gitee
## 3) 添加GitHub
ssh-add ~/.ssh/id_rsa_github

5. 配置config文件

config文件, 一般保存在~/.ssh/目录里, 用于切换多个gitee、github账号.
将config文件中关于username和email的global配置删除, 然后改为以下内容:

Host gitlab.com
HostName gitlab.com
IdentityFile C:\\用户\\<username>\\.ssh\\id_rsa_gitlab
PreferredAuthentications publickey
User alice


Host github.com
HostName github.com
IdentityFile C:\\用户\\<username>\\.ssh\\id_rsa_github
PreferredAuthentications publickey
User bob

参考资料

  1. 使用Git bash切换Gitee、GitHub多个Git账号

相关推荐

  1. Git工作站账户配置

    2024-07-18 16:48:02       25 阅读
  2. Git个托管平台Git账户配置

    2024-07-18 16:48:02       47 阅读
  3. Git账号本地SSH连接配置方法

    2024-07-18 16:48:02       60 阅读
  4. Windows下配置账号git ssh

    2024-07-18 16:48:02       48 阅读
  5. git 配置账号(码云、github、gitlab)

    2024-07-18 16:48:02       49 阅读
  6. 配置 SSH 管理Git 仓库和以及个 Github 账号

    2024-07-18 16:48:02       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-18 16:48:02       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-18 16:48:02       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-18 16:48:02       57 阅读
  4. Python语言-面向对象

    2024-07-18 16:48:02       68 阅读

热门阅读

  1. python 请求https api, header参数的设置

    2024-07-18 16:48:02       24 阅读
  2. 文件上传obs服务器

    2024-07-18 16:48:02       22 阅读
  3. C++运算符重载(+)

    2024-07-18 16:48:02       21 阅读
  4. 使用Dockerfile构建镜像

    2024-07-18 16:48:02       20 阅读
  5. python开发基础——day14 模块与包

    2024-07-18 16:48:02       23 阅读
  6. 【国内当前可用pip&conda源刷新】

    2024-07-18 16:48:02       19 阅读
  7. 解决浏览器缓存导致获取不到最新前端代码问题

    2024-07-18 16:48:02       21 阅读
  8. 6Python的Pandas:数据读取与输出

    2024-07-18 16:48:02       22 阅读
  9. linux修改时区为CST

    2024-07-18 16:48:02       17 阅读
  10. 请求通过Spring Cloud Gateway 503

    2024-07-18 16:48:02       18 阅读
  11. 使用小皮面版的Nginx服务搭建本地服务器

    2024-07-18 16:48:02       21 阅读