当前位置: 首页 > article >正文

git 配置多端多个账号(码云、github、gitlab)

首先要确认已经安装 Git,可以通过执行 git --version 命令来查看当前安装的版本。

想为同一个电脑配置多个 Git 账户,需要完成以下整体流程:

  1. 清空默认的全局 user.nameuser.email 配置项;
  2. 为不同的 Git 账户生成不同的 SSH 密钥;
  3. 将以上的 SSH 密钥分别添加到 SSH-Agent 信任列表;
  4. 将以上的公钥添加到相应的 Git 账户中;
  5. config 文件中配置多个 SSH 密钥;
  6. 进行测试。

1、清空默认的全局 user.name 和 user.email

git config --global --unset user.name
git config --global --unset user.email

可以通过运行 git config --global --list 命令来查看 Git 的全局配置情况。

2、配置多个 Git 账户的用户名和邮箱:

  1. 单个配置
git config --global user.name "yourusername"
git config --global user.email "youremail@email.com"
  1. 多个配置

注意: 这里git config命令没有带—global,表示这是一个局部的设置,即该用户只在当前项目中使用,而不是全局的。

git config user.name "1"
git config user.email "1@hotmail.com"
  1. 删除配置
git config --unset user.name
git config --unset user.email

3、生成多个 SSH 密钥

管理员打开控制台

  1. 生成 gitte 仓库的 SSH

指定文件路径,方便后面操作:~/.ssh/id_rsa.gitee,id_rsa.github是秘钥的别名。

ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitee -C "xxxxx@qq.com"
  1. 生成 github 仓库的 SSH
ssh-keygen -t rsa -f ~/.ssh/id_rsa.github -C "xxxxx@qq.com"

4、将 ssh-key 分别添加到 ssh-agent 信任列表

ssh-agent bash
ssh-add ~/.ssh/id_rsa.gitee
ssh-add ~/.ssh/id_rsa.github

如果看到 Identitiy added: ~/.ssh/id_ras_github,就表示添加成功了。

5、将公钥添加到相应的 Git 账户中

使用以下命令将公钥复制到粘贴板中,然后粘贴到 Git 账户的 SSH 密钥中。也可以直接打开文件进行复制,文件名带有 .pub 后缀。

pbcopy < ~/.ssh/id_rsa.gitee

6、在 config 文件 (在 .ssh 目录下 ) 中配置多个 SSH 密钥

#Default gitHub user Self
Host github
    HostName github.com
    User git #默认就是git,可以不写
    IdentityFile ~/.ssh/id_rsa.github
	
# gitee的配置
host gitee 
	Hostname gitee.com #要连接的服务器
	#密钥文件的地址,注意是私钥
	IdentityFile ~/.ssh/id_rsa.gitee

#Add gitLab user 
Host myGit
    HostName git.xxxxx.cn
    IdentityFile ~/.ssh/id_rsa.xxxx

7、进行测试

ssh -T git@gitee.com

git clone git@{配置的 Host}:xxx/xxxx.git
git clone git@myGit:xxx/xxxx.git

http://www.kler.cn/a/161232.html

相关文章:

  • 【Xrdp联机Ubuntu20.04实用知识点补充】
  • jQuery笔记
  • 分布式和并发模型的比较和讨论记录
  • 面试:TCP、UDP如何解决丢包问题
  • 关于分治法左右区间单调遍历应该如何设计
  • Apache Kylin 添加MSSQL等第三方数据源(MySQL 亦可)
  • 毕设:《基于hive的音乐数据分析系统的设计与实现》
  • Ardupilot开源飞控之Invensense IMUs
  • 使用bard分析视频内容
  • 加载离线镜像包:在线镜像离线为tar包、tar离线镜像包加载并根据imageId打tag
  • INFINI Easysearch 与华为鲲鹏完成产品兼容互认证
  • 【文件上传系列】No.0 利用 FormData 实现文件上传、监控网路速度和上传进度(原生前端,Koa 后端)
  • 获取MATLAB默认配色方案
  • Git初学入门指令
  • Android平板还能编程?Ubuntu本地安装code-server远程编程写代码
  • Mysql综合案例练习<1>
  • SpringbootWeb登录认证
  • 【JavaScript】JS——Map数据类型
  • 视频监控管理平台/智能监测/检测系统EasyCVR智能地铁监控方案,助力地铁高效运营
  • 用23种设计模式打造一个cocos creator的游戏框架----(四)装饰器模式
  • MySQl int(1)、int(20) 的区别到底在哪里
  • JVM虚拟机(已整理,已废弃)
  • Spring Cache快速入门教程及案例
  • Java程序员,你掌握了多线程吗?【文末送书】
  • js取出对象数组某个属性拼接成字符串或者取出某些属性组成新的数组
  • 【C/PTA】结构体进阶练习