一台PC创建多个Git平台账号

因为工作需要,需要使用Gitlab,所以公司的项目都是使用Gitlab来提交代码的;但是平时自己想学习研究一些东西是使用的Gitee,所以需要在一台电脑上配置多个Git平台账号,以下是配置的步骤:

删除Global的设置

首先通过如下命令查看是否设置了全局配置

shell 复制代码
git config --global --list

如果有配置,则逐一删除,比如user.email,user.name

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

生成一对新的RSA公私钥

用如下命令生成,此过程会让用户输入公私钥的存储位置,一般存放为 ~/.ssh/xxxx(xxxx为新的文件名,注意这里不要和旧的重名了,比如可以设置为 ~/.ssh/id_rsa_gitee)

shell 复制代码
ssh-keygen -t rsa -C "youremail@example.com"

配置config文件

在 ~/.ssh/目录下面添加一个名为config的文件,注意这里是没有后缀的,一般建议使用vi或者vim命令来创建文件,内容如下

shell 复制代码
Host gitlab.com
    HostName gitlab.com
    IdentityFile ~/.ssh/id_rsa
    PreferredAuthentications publickey
    User zhangsan

Host gitee.com
    HostName gitee.com
    IdentityFile ~/.ssh/id_rsa_gitee
    PreferredAuthentications publickey
    User wangwu

测试

用如下命令检测是否配置成功

shell 复制代码
 ssh -T git@gitee.com

配置不同的user

比如对于gitlab我想用张三(zhangsan, zhangsan@abc.com),对于gitee我想用王五(wangwu,wangwu@abc.com),需要做如下配置

  1. 修改~/.gitconfig,内容如下:
shell 复制代码
[user]
    name = youName
    email = youEmail@example.com

[includeIf "gitdir:**/company/**"]
    path = ~/.gitconfig_work

[includeIf "gitdir/i:**/personal/**"]
    path = ~/.gitconfig_self
  1. 创建~/.gitconfig_work,内容如下:
shell 复制代码
[user]
    name = zhangsan
    email = zhangsan@abc.com
  1. 创建~/.gitconfig_self,内容如下:
shell 复制代码
[user]
    name = wangwu
    email = wangwu@abc.com

当clone自己的项目时,要把项目clone到文件夹personal下面即可

当clone公司的项目时,要把项目clone到文件夹company下面即可

记得,在commit前运行如下命令确认一下

shell 复制代码
git config user.name
相关推荐
深紫色的三北六号2 小时前
基于 Git 某个分支创建一个全新的仓库(GitHub / GitLab)
git·gitlab·github
-拟墨画扇-4 小时前
Git | 标签操作
git·gitee·github·gitcode
狂龙骄子4 小时前
使用git filter-branch命令修改历史提交
git·filter-branch·迁移仓库历史·所有权转移·修改历史提交
C2X4 小时前
关于Git Graph展示图的理解
前端·git
CryptoRzz4 小时前
StockTV API 对接全攻略(股票、期货、IPO)
java·javascript·git·web3·区块链·github
-拟墨画扇-5 小时前
Git | 远程仓库操作
git·gitee·github
NuageL6 小时前
第一次用Git协作流程记录和踩坑
git
特级业务专家8 小时前
这下发布不需要Jenkins了
linux·git·docker
0和1的舞者8 小时前
Git 实战踩坑:如何让多个 IDE 项目共用一个远程仓库(附子模块问题解决)
git·开发·仓库·码云·子模块·操作·冲突
妖孽白YoonA10 小时前
Git Worktree:同时处理多个分支的正确姿势
git