简单易用多git服务器ssh密钥配置管理

文章目录

  • 前言
  • 一、什么是ssh-key
  • 二、配置步骤
    • 添加ssh-key
    • 配置多ssh-key
  • 总结


前言

快速理解如何配置管理多个git服务器的ssh,当我们有多个git帐号时会涉及如何管理不同的remote使用不同的git账户登陆推送

  1. 当前repo的origin remote是github,我们在推送时直接git push origin [branch_name]自动调用github的ssh密钥
  2. 当前repo的gitee remote是gitee,我们在推送时git push gitee [branch_name]自动调用gitee的ssh密钥

如此不管多少个git服务器被使用,那么都能很灵活管理ssh-key


一、什么是ssh-key

SSH-key是SSH协议用于身份验证的一种方式,用于加密和解密数据。它由一个公钥和一个私钥组成。公钥被存储在服务器上,私钥则存储在客户端。当客户端发起SSH连接时,它会使用私钥加密数据并发送给服务器,服务器会使用公钥解密数据进行身份验证。SSH-key可以避免使用密码的繁琐,提高SSH连接的安全性

二、配置步骤

添加ssh-key

创建gitee ssh-key 指令如下:

ssh-keygen -t rsa "***@gmail.com" -f ~/.ssh/gitee_id_rsacat ~/.ssh/gitee_id_rsa.pub
# 复制输出内容到公钥框里,点击确定

gitee 添加ssh如下所示:
在这里插入图片描述创建github ssh-key 指令如下:

ssh-keygen -t rsa "***@gmail.com" -f ~/.ssh/github_id_rsacat ~/.ssh/github_id_rsa.pub
# 复制输出内容到key框里,点击确定

github添加ssh如下所示:

在这里插入图片描述
在这里插入图片描述

配置多ssh-key

在 ~/.ssh 目录下新建一个 config 文件,添加如下内容(其中 Host 和 HostName 填写 git 服务器的域名,IdentityFile 指定私钥的路径)

# config 文件内容如下
# gitee
Host gitee.comHostName gitee.comPreferredAuthentications publickeyIdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.comHostName github.comPreferredAuthentications publickeyIdentityFile ~/.ssh/github_id_rsa

用 ssh 命令分别测试

ssh -T git@gitee.com
ssh -T git@github.com

成功配置如下所示,不需要管but GitHub does not provide shell access.这一段意思是服务器不允许直接ssh连接到终端,对于push pull等不影响

在这里插入图片描述


总结

以上就是今天要分享的内容,希望大家也能跟具这篇文章真正掌握配置git多账号的技能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/632.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pytorch量化库使用(2)

FX Graph Mode量化模式 训练后量化有多种量化类型(仅权重、动态和静态),配置通过qconfig_mapping ( prepare_fx函数的参数)完成。 FXPTQ API 示例: import torch from torch.ao.quantization import (ge…

【MySQL数据库 | 第十九篇】SQL性能分析工具

目录 前言: SQL执行频率: 慢查询日志: profile: profile各个指令: 总结: 前言: 本篇我们将为大家讲解SQL性能的分析工具,而只有熟练的掌握了性能分析的工具,才可以更…

C语言学习(二十九)---内存操作函数

在上一节内容中,我们学习了有关字符串操作的函数,其中分为了限制长度和不限制长度两种方式,虽然上节内容已经在很大程度上有助于程序的实现,但是其有一个致命的缺陷,聪明的你一定已经猜到了吧,对的&#xf…

一面、二面、三面有什么区别?

很多公司面试都分一面、二面、三面甚至更多,大家可能会好奇,为什么要面这么多面,每一面又有啥区别呢? 首先我来回答下为什么要这么多面,最核心的是最后3点: 如果光是一个人面,担心会看走眼&…

Python强类型编程

Python是一门强类型的动态类型语言,具体如下特性: 可以动态构造脚本执行、修改函数、对象类型结构、变量类型但不允许类型不匹配的操作 第一个例子体现动态性:用字符串直接执行代码,动态构建了一个函数并执行,甚至给…

IDEA创建一个Servlet项目(tomcat10)

一、创建maven项目 org.apache.maven.archetypes:maven-archetype-webapp 二、增加Servlet依赖 tomcat9及以前依赖 <!--加入servlet依赖&#xff08;servlet的jar&#xff09;--><dependency><groupId>javax.servlet</groupId><artifactId>ja…

设计模式-抽象工厂模式

抽象工厂模式 1、抽象工厂模式简介2、具体实现 1、抽象工厂模式简介 抽象工厂模式(Abstract Factory Pattern)在工厂模式尚添加了一个创建不同工厂的抽象接口(抽象类或接口实现)&#xff0c;该接口可叫做超级工厂。在使用过程中&#xff0c;我们首先通过抽象接口创建不同的工厂…

NoSQL之 Redis配置与优化

文章目录 一、关系数据库与非关系型数据库关系型数据库&#xff1a;非关系型数据库关系型数据库和非关系型数据库区别&#xff1a;非关系型数据库产生背景 二、Redis简介Redis 具有以下几个优点&#xff1a;使用场景&#xff1a;哪些数据适合放入缓存中Redis为什么这么快 三、R…

4、数据库操作语句:聚合函数

目录 1、定义 2、常用的聚合函数 1&#xff09;Avg/sum&#xff1a;只适用于数值类型的字段&#xff08;或变量&#xff09;。 2&#xff09;Max/min:适用于数值类型、字符串类型、日期时间类型的字段&#xff08;或变量&#xff09; 3&#xff09;Count&#xff1a; ①作…

SpringBoot自定义starter之接口日志输出

文章目录 前言文章主体1 项目全部源码2 项目结构介绍3 starter 的使用3.1 配置文件 application,yml的内容3.2 启动类3.3 控制器类 4 测试结果 结语 前言 本文灵感来源是一道面试题。 要求做一个可以复用的接口日志输出工具&#xff0c;在使用时引入依赖&#xff0c;即可使用。…

OpenCV学习笔记 | ROI区域选择提取 | Python

摘要 ROI区域是指图像中我们感兴趣的特定区域&#xff0c;OpenCV提供了一些函数来选择和提取ROI区域&#xff0c;我们可以使用OpenCV的鼠标事件绑定函数&#xff0c;然后通过鼠标操作在图像上绘制一个矩形框&#xff0c;该矩形框即为ROI区域。本文将介绍代码的实现以及四个主要…

Vue中如何进行游戏开发与游戏引擎集成?

Vue中如何进行游戏开发与游戏引擎集成&#xff1f; Vue.js是一款流行的JavaScript框架&#xff0c;它的MVVM模式和组件化开发思想非常适合构建Web应用程序。但是&#xff0c;如果我们想要开发Web游戏&#xff0c;Vue.js并不是最合适的选择。在本文中&#xff0c;我们将介绍如何…