一台电脑配置两个Git账号(github和gitlab),不同仓库使用不同的git

我们工作时一般都是使用gitlab,工作电脑也一般配置的 git 是连接 gitlab 的,那么当我们如果想用同一个电脑实现不同仓库根据自己的需要到底是推送代码到github还是 gitlab,以及使用哪个账号,(比如如果想用工作电脑维护自己的 github 项目,但是怕后面被公司追究用工作电脑干私事,省点心力),可以按照如下教程配置一下 git,新配置一个 git,把 git 的公钥放到 github,使用 git 命令修改指定仓库的git用户名和邮箱,这样这个仓库就能按照我们设置的账号提交代码到 github了。

具体步骤

1、生成新的公钥文件

id_rsa**_github** 后缀可以按照自己的需求修改,最后是你的 github 所绑定的邮箱,执行命令后,一路按回车就行

复制代码
ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C "xxx@qq.com"

2、配置新 git 公钥到 github

进入 ~/.ssh 文件夹下,会看到 2 个新文件, id_rsa_githubid_rsa_github.pubid_rsa_github.pub存的就是公钥。

执行more id_rsa_github.pub 命令查询公钥。复制输出的所有内容,进入 github 的 ssh 配置页面,添加公钥。

3、修改 config 文件

在 .ssh/config 文件中配置新 git 账号的用户名和github域名

复制代码
# gitlab
Host gitlab.com
  HostName gitlab.com
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa
  User zhangsan # gitlab用户名

# github
Host github.com
  HostName github.com
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa_github
  User zhangsan123 # github 用户名,不一定要跟 github 用户名相同,可以自定义想叫的名字,但是需要跟下面配置的 git 用户名保持一致

4、测试能否连接 github成功

执行 ssh -T git@github.com,如果输出如下内容说明是连接成功。

复制代码
Hi luoChunhui-1024! You've successfully authenticated, but GitHub does not provide shell access.

5、设置指定仓库使用 github 账号来进行 git 提交

git clone 拉取仓库或者 git init 仓库后,进入指定仓库,执行如下命令,就成功把该仓库设置成使用新 git 账号来提交代码了,可以提交一些代码变更测试一下。

复制代码
git config user.email "xxx@xx.com"
git config user.name "zhangsan123" # 需要跟 config 文件里设置的用户名保持一致

参考

一台电脑配置两个Git账号

一台电脑绑定两个git帐号(GitHub和GitLab)

附录

可以使用以下 Git 命令来查看你配置的邮箱和用户名:

查看全局配置的邮箱和用户名(适用于所有项目):

bash 复制代码
git config --global user.email
git config --global user.name

查看当前项目配置的邮箱和用户名:

bash 复制代码
git config user.email
git config user.name
相关推荐
极智-9967 小时前
GitHub 热榜项目-日榜精选(2026-02-02)| AI智能体、终端工具、视频生成等 | openclaw、99、Maestro等
人工智能·github·视频生成·终端工具·ai智能体·电子书管理·rust工具
樱花落海洋11111 小时前
GitHub DeskTop Can`t find URP项目
github
刺客xs11 小时前
git 入门常用命令
大数据·git·elasticsearch
我的golang之路果然有问题12 小时前
使用 Hugo + GitHub Pages + PaperMod 主题 + Obsidian 搭建开发博客
golang·go·github·博客·个人开发·个人博客·hugo
codezzzsleep12 小时前
fuClaudeBackend:面向fuclaude的轻量后端代理 + Key 管理后台
ai·github·ai编程
kjzd12313 小时前
GitHub 热门项目趋势分析报告 (2026年2月2日)
github
LostSpeed13 小时前
git - github工程中不能包含大文件
git·github
pzx_00113 小时前
【GIT】删除远程文件
git
小白_ysf13 小时前
Git 命令操作完整指南(实际工作中常用命令)
git·代码上传
HealthScience14 小时前
怎么使用git下载huggingface的文件
git