本地配置多个 Git 账户信息,满足不同的 Git 平台

【GIT】git不同仓库设置不同用户名和邮箱 git不同仓库设置不同用户名和邮箱 阅读详情

写在前面的话

因为工作的时候为了访问速度快,我把很多仓库都迁移到了码云。但是呢,个人的一些东西还是保留在了 GitHub 了。这样就存在一个不得不解决的问题,就是两个平台的注册时使用的邮箱不同,用户名也不同。

之前都是每次 push 的时候输入账号和密码来解决这个问题的,但是这样实在是太麻烦了。于是,求助了一下万能的百度(其实更喜欢用 Google),就有了这篇文章。

主要是通过码云和 GitHub 平台的 SSH 公钥实现本地多个 Git 账户的方式。

本地生成不同的 SSH-Key

这一步主要是通过下面这个命令,针对不同的平台生成不同的 SSH-Key:

ssh-keygen -t rsa -C email -f ~/.ssh/id_rsa

需要说明的是:

  • email:指的是你在对应平台注册时所使用的邮箱地址。
  • id_rsa:指的是你在本地生成 SSH-Key 文件的名称。可以针对不同的平台命名不同的名称,比如针对码云可以命名为 gitee_id_rsa。

接下来,我们就可以通过上面的命令来分别生成不同平台的 SSH-Key,我这儿提供码云和 GitHub 平台:

  • 码云平台的 SSH-Key:

      ssh-keygen -t rsa -C 'xxxxx@company.com' -f ~/.ssh/gitee_id_rsa
    
  • Github 平台的 SSH-Key:

      ssh-keygen -t rsa -C 'xxxxx@qq.com' -f ~/.ssh/github_id_rsa
    

在执行上面的命令之后(回车之后),你应该能看到这样的提示:

Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): 

这里是提示你配置生成的 SSH-Key 存储的路径和名称。

  • 如果不输入任何内容的话,则会读取默认的路径和名称。文件名称就是你执行上面命令的 gitee_id_rsa 或者 github_id_rsa。
  • 也可以输入你想存储的路径和名称,例如 /Users/{username}/.ssh/id_rsa

你也可能看不到上面的提示(我在执行的时候就没看到):

Generating public/private rsa key pair.

然后你可能会看到另一个提示:

Enter passphrase (empty for no passphrase): 
Enter same passphrase again:

这里是提示你配置生成的 SSH-Key 的口令和确定口令,我们直接默认即可(就是回车)。

如果接下来你看到了类似下面这种提示,就说明生成 SSH-Key 成功了:

Your identification has been saved in /Users/{username}/.ssh/id_rsa_oschina.
Your public key has been saved in /Users/{username}/.ssh/id_rsa_oschina.pub.
The key fingerprint is:
SHA256:lEmncZqtuXuHgZ4XtkVMkazLaTC5XgN0VLjYi3T8Fk8 xxx@xxx.com
The key s randomart image is:
+---[RSA 2048]----+
|        o o..=+o |
|       . @. + o X|
|        B..B o   |
|       . oB B . E|
|        So X = + |
|        ..* X o .|
|       ..+ O o   |
|        o.* .    |
|        .o .     |
+----[SHA256]-----+

成功地生成了 SSH-Key 之后,我们需要将它添加到本地:

ssh-add ~/.ssh/gitee_id_rsa

执行完上面的命令之后,如果成功的话可以看到下面这样的提示内容:

Identity added: /Users/king/.ssh/github_id_rsa (xxxxxx@qq.com)

最后可以通过下面的命令查看已经添加到本地的 SSH-Key:

ssh-add -l

这样,你会看到所有已经添加到本地的 SSH-Key:

3072 SHA256:STeIkkZVIZwhmM0eAPI2inMl/EmV1Mhj0twxr4Qcx/U xxxxxx@qq.com (RSA)
3072 SHA256:9MNFPZA7mFblCBjsRUIk3b8TznxHUroroAryI/Q80Pg xxxxxx@qq.com (RSA)

到这里,恭喜你!因为你已经成功了在本地生成了针对不同平台的 SSH-Key 了。

本地 SSH-Key 配置

我们完成了第一步之后,接下来才是重中之重呢!就是要在对应的 .ssh 目录中创建一个 config 文件,来针对不同平台进行配置。

  1. 首先,我们通过终端进入 .ssh 目录

    cd ~/.ssh
    
  2. 然后,再通过终端创建 config 文件

    touch config
    
  3. 最后,在 config 文件中输入下面这些内容

    # gitee
    Host gitee.com
    HostName gitee.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/gitee_id_rsa
    # github
    Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_id_rsa
    

    这里需要说明的是:

    • Host 和 HostName 配置的是 Git 平台的域名
    • PreferredAuthentications 配置的是公钥还是私钥,publickey 表示公钥,privatekey 表示私钥。
    • IdentityFile 配置的是本地生成的 SSH-Key 文件的路径和名称。

最后保存 config 文件即可,这样我们就完成了本地的所有工作。

配置 Git 平台的 SSH 公钥

完成了本地生成 SSH-Key 的所有工作之后,我们就需要访问不同的 Git 平台来根据本地生成的 SSH-Key 来配置 SSH 公钥了。

这里我主要以码云和 GitHub 平台进行说明。

码云平台

首先,我们访问并登陆到码云平台。

在这里插入图片描述

然后,点击右上角的头像,在弹出的菜单中选择【设置】。

在这里插入图片描述

在左边的菜单中,找到【安全设置】中的【SSH公钥】菜单,并且打开。

在这里插入图片描述

在上面的页面中的【添加公钥】中配置我们在本地生成的 SSH-Key 信息就可以了。

  • 标题:这个就是你当前配置的 SSH-Key 的名称,可以随意进行填写,只要是不重复就可以了。
  • 公钥:这个就是你在本地生成 SSH-Key 文件的内容,一般就是 .ssh 目录中的 gitee_id_rsa.pub 文件。

最后,点击保存即可。

GitHub 平台

首先,我们访问并登陆到 GitHub 平台。

在这里插入图片描述

然后,点击右上角的头像,在弹出的菜单中选择【Setting】。

在这里插入图片描述

在左边的菜单中,找到【SSH and GPG keys】菜单,并且打开。

在这里插入图片描述

在【SSH keys】一栏的右上角,点击【New SSH key】菜单,新增一个 SSH-Key。

在这里插入图片描述

在上面的页面中的【Add new】中配置我们在本地生成的 SSH-Key 信息就可以了。

  • Title:这个就是你当前配置的 SSH-Key 的名称,可以随意进行填写,只要是不重复就可以了。
  • Key:这个就是你在本地生成 SSH-Key 文件的内容,一般就是 .ssh 目录中的 gitee_id_rsa.pub 文件。

最后,点击保存即可。

最后的验证

完成了上面所有的步骤,实际上我们已经完成了本地多个 Git 账户信息的配置。但是,到目前为止我们还不知道我们的配置到底有效。所以,我们的最后一步就是来验证一下我们这么多的工作是否是有效的。

我们只需要通过下面的命令来进行验证就可以了:

ssh -T git@example.com

这里的 example.com 指的是 Git 平台的域名。

  • 码云平台:

    ssh -T git@gitee.com
    
  • GitHub 平台:

    ssh -T git@github.com
    

在执行上面的命令之后,如果你看到下面这样的提示就说明配置已经成功了。

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

这里的 username 是你在对应 Git 平台的用户名。

这篇文章仅在 Mac 系统中进行了验证,Windows 系统可能会存在差异,目前还没实际操作过呢!

Windows平台配置Git管理单个或多个SSH密钥、IntelliJ IDEA使用Git 目录 需求 准备工作 配置用户信息 Git的验证方式 生成SSH-KEY 一、配置单个SSH 1. 复制你的公钥内容到第三方Git服务器 2. 测试SSH密钥 二、配置多个SSH 三、上传本地项目到第三方Git服务器(针对新工程) 四、使用IntelliJ IDEA从第三方Git服务器拉取工程到本地 需求 a. 配置一个 DevCloud 账号 b. 配置两个不同... 阅读详情

相关推荐

Git配置SSH公钥

而用户的 key 则是针对用户的,用户添加了 key 就对用户名下的仓库和用户参加了的仓库具有权限,一般而言,用户的key具有推送和拉取的权限,而仓库的 key 则只具有拉取权限。仓库的 sshkey 只针对仓库,且我们仅对仓库提供了部署公钥,即仓库下的公钥仅能拉取仓库,这通常用于生产服务器拉取仓库的代码。Gitee 提供了基于 SSH 协议的 Git 服务,在使用 SSH 协议访问仓库仓库之前,需要先配置好账户 SSH 公钥。和仓库"只读"权限的 SSH Key 相比,账户的 SSH Key 同时具备。

Zmaomao_的博客 3041

Git多用户,不同项目配置不同Git账号

但是,这不适用于 Azure DevOps,因为与 SSH 协议相关的技术原因以及 Git SSH URL 的结构。Azure DevOps 会盲目接受客户端在身份验证期间提供的第一个密钥。通常,如果为 SSH 客户端配置多个密钥并连接到 SSH 服务器,则客户端可以一次尝试一个密钥,直到服务器接受一个密钥。对于 Azure DevOps,需要将 SSH 配置为显式使用特定的密钥文件。b. 一个 github,用于自己进行一些开发活动;a. 一个 gitee,用于公司内部的工作开发;

weixin_46721670的博客 928

STM32F103C8T6全桥逆变电路PWM波生成(基于HAL库)

全桥逆变电路需要两组开关管相互协同工作,故需要两路PWM控制信号,为了防止电源短路,需要保证同一桥臂的上下两个开关管不会同时导通,故两路PWM在相位上需要相差180°;为了保证高频变压器不会磁饱和,使正负半周PWM占空比相同。但是传统的互补输出达不到调节占空比调节输出电压的效果。......

weixin_45042735的博客 6022

Git 一台电脑配置多个账户

1. 配置全局用户 ##用户名和邮箱名和账号名没有必然相关性,可以不一样 ##我用github的账号设置了user.email,然而gitlab照样可以push数据 ##首次clone数据时有要求输入该网站的账号和密码,可以理解git的配置是git的账号和昵称 git config --global user.name "zhangsan" git config --global user....

gezilan的博客 817

数字电路实验避坑指南:如何正确搭建主从JK触发器测试电路(附Proteus仿真)

本文详细解析了主从JK触发器的工作原理及实验搭建指南,重点解决了常见的Catching Problem现象,并提供了Proteus仿真优化方案。通过元器件选型、电路连接步骤和常见错误排查,帮助读者正确搭建测试电路,确保数字电路实验的稳定性和可靠性。

weixin_30790841的博客 469

[Stanford CS217]CUDA中矩阵乘法GEMM优化的最关键点:向量内积和向量外积分别取行和取列

对于矩阵C中的每一个tile,矩阵A与矩阵B中的tile只需要读取一次,这样就可以达到 O(N) 的计算强度。理想情况下性能应当受限于算术吞吐量,确切来说对于一个大型方阵,即 M=N=K ,矩阵乘法的数学操作复杂度为 O(N3) ,而数据量为 O(N2) ,同时计算强度为 N (这里的计算强度可以被理解为同一个数据被重复利用的次数)。GEMM就是指计算 C=A∗B+C ,其中 A 、B和C都是矩阵,A是 M×K 的矩阵,B是 K×N 的矩阵, C是 M×N 的矩阵。这就是向量内积和向量外积的最大区别。

weixin_55035144的博客 1425

同一台电脑使用不同的git账户登录不同的git网站

同一台电脑使用不同的git账户登录不同的git网站 使用不同的git账户登录不同的git网站 https://juejin.im/post/5db706746fb9a020531fb077

yatsov的博客 855

上、下拉电阻(定义、强弱上拉、常见作用、吸电流、拉电流、灌电流)

1.上、下拉电阻定义 上拉电阻是把一个信号通过一个电阻接到电源(Vcc),下拉电阻是一个信号通过一个电阻接到地(GND)。 2.强上拉、弱上拉 强上拉、弱上拉的强弱只是上拉电阻的阻值不同,没有什么严格区分。例如:50Ω上拉,一般成为强上拉;100kΩ上拉则称为弱上拉。下拉也是一样的。强拉电阻的极端就是0Ω电阻,即将信号线直接与电源或低相连接。 3.上、下拉电阻的作用 因为上下拉电阻的作用概念很宽泛,不用领域的使用方法也不同,常见使用方法整理如下: ...

小浪宝宝的博客 3万+

Git的配置及文件传输

首先要下载安装git相关软件,在将git配置到idea中。 1.下载相关插件 2.配置git安装包中的gie.exe路径 3.配置git安装包中的bash.exe路径 4.登录git账户 5.添加git本地仓库 6.配置Git本地仓库路径

qq_49121352的博客 239

BIOS/UEFI完全指南:从开机自检到超频魔改的底层硬件控制

计算机启动过程始于固件层,其核心是负责硬件初始化与引导的系统软件。传统BIOS基于16位实模式,寻址能力有限,而现代UEFI采用保护模式,支持图形界面与安全启动,实现了从概念到架构的革新。这一演进带来了显著的技术价值:更快的启动速度、更强的安全性以及对大容量存储设备的原生支持。在工程实践中,无论是解决“虚拟化技术禁用”问题、调整内存XMP配置以提升性能,还是为老主板“魔改”添加NVMe支持,都需要深入理解并操作BIOS/UEFI设置。掌握这些底层交互能力,是进行硬件调试、系统优化与故障排查的关键,也是连接抽

weixin_34236869的博客 457

Windows事件ID 10010报错:DCOM注册超时与Game Bar修复指南

DCOM(分布式组件对象模型)是Windows中用于跨进程组件通信的核心机制,其注册超时问题常表现为事件ID 10010报错。当Game Bar的PresenceWriter组件因权限配置不当、组件损坏或开机资源竞争而无法在限定时间内向DCOM注册时,系统会记录该错误,并可能伴随DCOM服务主机CPU占用升高或游戏栏功能异常。理解DCOM激活原理与Network Service账户权限,有助于从权限修复、组件重注册及开机时序优化等层面系统排查。本文针对不同Windows版本,提供从静默处理到根治的完整方案,

weixin_33563728的博客 891

一个Git终端如何配置多个Git仓库和账户

通常情况下,很多公司会将代码托管到GitLab或者第三方平台上(如阿里)进行管理,而我们自己的开源项目等通常是托管到GitHub上,每个托管网站都对应一个Git账户。 默认情况下,一台电脑上的Git对应一个Git账户,也就只能往一个网站push代码,很不方便,尤其是对于用自己的电脑用来办公,操作不好,很容易产生冲突。 本篇文章将以双账户为例,详细介绍如何在一个Mac Git终端配置多个账户,同时管...

智海观潮的博客 1804

【RV1126/RV1109学习笔记】#基础篇#(2)基础入门使用

一、调试方式 1、串口调试 2、ADB调试 3、网络调试 二、基础外设使用 音频使用(aplay,arecord,amixer) 三、WIFI连接 四、屏幕背光控制

丨晋丨 1855

Git 账户管理指南:登录机制与用户信息查询

Git 账户管理指南:登录机制与用户信息查询在使用 Git 时,许多开发者常对两个问题感到困惑: 支持操作:仓库初始化、代码提交、分支管理、版本回退 唯一要求:配置提交者身份(非登录凭证,仅用于记录作者信息) 2. 需验证的远程操作 操作 验证方式 典型场景 HTTPS账号/令牌 或 SSH密钥 从GitHub拉取代码 同上 推送代码到远程仓库 同上 同步远程更新 二、查看Git用户名的4种方法 1. 查看当前仓库配置 2. 查看全局默认配置(最常用) 3. 定

wuxingwuyou的博客 1532

7、刚度矩阵与弹簧元素:有限元分析的核心

本文深入探讨了有限元分析中的核心概念——刚度矩阵与弹簧元素。详细介绍了刚度矩阵的定义、构建方法及其对称性、正定性和稀疏性等性质,同时解析了弹簧和阻尼器元素的特性及其在模拟复杂系统中的应用,如液压缸、减震器等。通过结合刚度矩阵与弹簧元素,可以提高结构模型的精度并模拟复杂的工程系统。文章还讨论了优化策略、验证流程、误差分析及实际应用案例,展示了这些技术在桥梁分析、汽车悬挂系统等领域的重要作用,并展望了其在未来新材料、智能结构和数字孪生技术中的发展潜力。

nice1的博客 234

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Git多帐号配置,还有小乌龟TortoiseGit多账户配置

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Ma...

yumingli001的博客 6340

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

GIT配置SSH以及多账户配置

许多 Git 服务器都使用 SSH 公钥进行认证。 为了向 Git 服务器提供 SSH 公钥,如果某系统用户尚未拥有密钥,必须事先为其生成一份。 这个过程在所有操作系统上都是相似的。 首先,你需要确认自己是否已经拥有密钥。 默认情况下,用户的 SSH 密钥存储在其 ~/.ssh 目录下。 进入该目录并列出其中内容,你便可以快速确认自己是否已拥有密钥: 其中.pub后缀的是公钥(我这里是配置了两...

Fouse_的博客 1008

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Git 配置 SSH 密钥与私钥教程(跨平台完整指南)

本文详细介绍了在macOS、Windows和Linux系统上配置Git SSH密钥的全流程,包括生成密钥对、添加公钥到Git平台、测试连接以及多账户管理。不同系统的操作步骤均有说明,并附有常见问题解决方案。通过SSH密钥认证可提高Git操作的安全性和便利性,适合开发者在各种Git平台(如GitHub、GitLab等)上使用。文章最后还提供了多账户配置的方法,帮助用户灵活管理不同Git账号。

2503_92145588的博客 2万+

如何管理两个Git账户

在开发过程中,我们有时需要同时使用 多个 Git 账户(如个人 GitHub 账户和公司 GitLab 账户)。但由于 Git 默认使用全局配置,可能会导致提交信息混乱、权限冲突等问题。本文将介绍如何在同一台机器上 安全、高效地管理多个 Git 账户。

weixin_43495948的博客 852

Git学习——Git基本工作原理(入门级教程,通过玩转Git本地仓库,帮助新手快速入手Git)

(入门级教程,通过玩转Git本地仓库,帮助新手快速入手Git)本文主要介绍git的分区及各个分区间如何进行交互,并简单阐述git的基本工作原理。——本文不介绍git难点,如版本回溯和分支管理。

Super辉sir的博客 5128

对Git用户名与Github账户关系的理解

入门学习Git的过程中,产生了这样的困惑: 在电脑上,如果要用Git,我们需要通过命令git config --global user.name "myname"和git config --global user.email "myname@email.com"来配置用户名和email,表明是“谁”在操作Git,来做提交代码等等一系列操作。 另外,如果我们需要使用代码托管的服务,比如GitHub,...

Apple_Boy的博客 1万+

【Git】多个托管平台Git账户配置

通常情况,公司会搭建自己的gitlab代码托管服务或者将代码托管到第三方平台上,而我们自己的开源项目通常托管到Github上,每个托管平台都有对应的Git账户。接下来我将会以两个账号为例,进行相应的配置,以达到对不同托管平台上的仓库进行丝滑的操作。但是,在公司的仓库你可能使用自己真实的名字和工作邮箱,在github可能使用的是昵称和私有的个人邮箱。,可以看到这个ip是和Host里面对应的,你也可以更改仓库的origin,将这个ip改成任意一个你喜欢的,只要和上述配置中的Host对应就行。

Daniel的博客 1219

Git-SSH:在一台设备通过ssh管理多个Git账户

本文介绍了如何通过SSH配置实现一台电脑管理多个Git账户。主要内容包括:1. 安装Git和SSH环境,Windows/Linux系统下的具体步骤;2. 账户配置方法,包括为每个账户生成独立密钥(ed25519算法)、使用ssh-agent管理密钥、将公钥添加到Gitee/GitHub等平台;3. 创建SSH配置文件(~/.ssh/config),通过Host别名实现账户隔离;4. 测试连接和仓库操作时的注意事项,如修改远程仓库索引格式。这套方案解决了多账户切换繁琐的问题,使不同账户的代码提交互不干扰。

starschris的博客 665

配置本地环境以管理Git多账户SSH连接

是您自定义用来区分不同GitHub帐号连接配置别名。这将允许您通过别名区分要使用哪一组凭据。对于第二个(和随后每个)账户重复上述步骤,确保每次都使用不同的文件名。如果想要全局设置用户名和邮箱(适用于所有仓库),可以添加。当提示你输入文件名时,指定一个独特名称,例如。替换成与所创建 SSH 密匙相匹配帐号信息.其中 X 是你想推送代码所对应帐号序列.

kaikaile1995的博客 341

git配置远程仓库的认证信息

git配置远程仓库的的认证信息:用户在使用 Git 与远程仓库交互(比如:从远程仓库拉取/推送代码)时,远程仓库需要验证用户身份信息(不然岂不是谁都可以拉取代码了)来控制用户对远程仓库的访问权限,而这个身份信息就是认证信息。如果我们不配置认证信息的话,

LXC_Fish的博客 2441

git安装配置教程(小白保姆教程2024最新版)

git安装配置教程(小白保姆教程2024最新版)——Git是目前世界上最先进的分布式版本控制系统,没有之一!说到Git,另一个需要知道的便是GitHub,GitHub是目前使用最多的社交代码托管平台。Git Hub,字面意思就是Git中心枢纽的意思,它是基于Git的,仅支持git 作为唯一的版本库格式进行托管,故名GitHub。

一枚嵌入式小白菜的摸爬滚打之路 11万+
上一篇: [Mozilla]Ajax快速入门
下一篇: 2020年JavaScript全球调查报告,一起来看看趋势吧
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值