【Git】保姆级详解:Git配置SSH Key(密钥和公钥)到github

在这里插入图片描述

  • 博主简介:22级计算机科学与技术本科生一枚🌸
  • 博主主页:是瑶瑶子啦
  • 每日一言🌼: “当人们做不到一些事情的时候,他们会对你说你也同样不能。”——《当幸福来敲门》
    克里斯加德纳

Git配置SSH Key

  • 一、什么是Git?
  • 二、什么是SSL?什么是公钥和密钥?
  • 三、Git配置

一、什么是Git?

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理1。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件

在这里插入图片描述

二、什么是SSL?什么是公钥和密钥?

SSH (Secure Shell) 密钥是用于身份验证和加密通信的一对加密密钥。它由两个部分组成:私钥(private key)和公钥(public key)。这对密钥是通过非对称加密算法生成的,其中私钥用于加密数据,而公钥用于解密数据

在 SSH 中,私钥应该保持在你的本地计算机上,并且必须保持安全和保密。公钥则可以被分享给其他人或服务器。当你连接到一个远程服务器时,你可以将你的公钥添加到服务器上,以便服务器可以使用该公钥对你的身份进行验证。

当你使用 SSH 协议连接到远程服务器时,身份验证过程如下:

  1. 你的本地计算机向服务器发送请求。

  2. 服务器要求提供身份验证凭据。

  3. 你的本地计算机将使用你的私钥对一个随机生成的数字进行加密,并将加密后的数字发送给服务器。

  4. 服务器使用你之前提供的公钥对加密后的数字进行解密。
    如果解密后的数字与服务器生成的数字匹配,服务器将验证你的身份并允许你登录。

使用 SSH 密钥对身份验证具有以下优势:

安全性: SSH 密钥使用非对称加密算法,提供更高的安全性,比密码身份验证更难以被破解。

方便性:你不需要记住复杂的密码,只需要使用你的私钥来访问远程服务器。

可信任性 公钥可以在多个服务器之间共享,而不需要使用相同的密码。

通过生成 SSH 密钥对并将公钥添加到服务器上,你可以实现更安全和方便的远程访问。

三、Git配置

首先打开Git Bash

  • 1.配置用户名和邮箱信息
git config --global user.name “username”
git config --global user.email “email”

注意“username”“email”和前面单词之间有一个空格!

  • 2.生成SSH Key
# 你的Github绑定的邮箱
ssh-keygen -t rsa -C "***@gmail.com"
  • 3.获取SSH Key

根据命令行提示,进入文件夹,获取以ssh-rsa的字符串(包括ssh-rsa)
在这里插入图片描述
在这里插入图片描述

  • 4.在github添加SSH Key

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

title:自定
SSH:复制刚才拷贝的

  • 5.检测是否配置成功
    本地git-bash输入以下命令
$ ssh -T git@github.com

若显示如下,则代表配置成功!🎉🎉🎉
在这里插入图片描述


在这里插入图片描述

  • Java岛冒险记【从小白到大佬之路】

  • LeetCode每日一题–进击大厂

  • Go语言核心编程

  • 算法

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

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

相关文章

【D3S】集成smart-doc并同步配置到Torna

目录 一、引言二、maven插件三、smart-doc.json配置四、smart-doc-maven-plugin相关命令五、推送文档到Torna六、通过Maven Profile简化构建 一、引言 D3S(DDD with SpringBoot)为本作者使用DDD过程中开发的框架,目前已可公开查看源码&#…

攻防世界-web-shrine

1. 题目描述 打开链接,发现是一串源码: 从源码中不难发现关键词是flask.render_template_string(safe_jinja(shrine)) ,这个函数说明了题目的关键点在于模板渲染,即存在模板注入 2. 思路分析 从代码中不难发现,即使…

探索泛型与数据结构:解锁高效编程之道

文章目录 引言第一部分:了解泛型1.1 为什么使用泛型1.2 使用泛型的好处 第二部分:泛型的使用场景2.1 类的泛型2.2 方法的泛型2.3 接口的泛型 第三部分:泛型通配符3.1 通配符3.2 通配符的受限泛型 第四部分:数据结构和泛型的应用4.…

Spring中的循环依赖问题

文章目录 前言一、什么是循环依赖?二、三级缓存三、图解三级缓存总结 前言 本文章将讲解Spring循环依赖的问题 一、什么是循环依赖? 一个或多个对象之间存在直接或间接的依赖关系,这种依赖关系构成一个环形调用,有下面 3 种方式…

MySQL 事务

目录 一、事务的概念 二、事务的ACID特点 1)事务的原子性 2)事务的一致性 3)事务的隔离性 (1)脏读 (2)不可重复读 (3)幻读 (4) 丢失更…

FFmpeg 使用总结

FFmpeg 简介 FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可以轻易地实现多种视频格式之间的相互转换。包括如下几个部分&#xf…

《合成孔径雷达成像算法与实现》Figure3.8

与图3.7的代码区别只在于原始信号的表达式对了一个时间偏移 代码复现如下: clc clear all close all%参数设置 TBP 100; %时间带宽积 T 10e-6; %脉冲持续时间 tc …

【Linux】守护进程

1 相关概念 1.1 守护进程的概念 守护进程也叫做精灵进,是运行在后台的一种特殊进程。它独立于控制终端并且可以周期性的执行某种任务或者处理某些发生的事件。 守护进程是非常有用的进程,在Linux当中大多数服务器用的就是守护进程。比如,web…

使用MethodInterceptor和ResponseBodyAdvice做分页处理

目录 一、需求 二、代码实现 父pom文件 pom文件 配置文件 手动注册SqlSessionFactory(MyBatisConfig ) 对象 实体类Users 抽象类AbstractQuery 查询参数类UsersQuery 三层架构 UsersController UsersServiceImpl UsersMapper UsersMapper.…

HOperatorSet.OpenFramegrabber “GigEVision“

HOperatorSet.OpenFramegrabber "GigEVision"访问失败 直接跳出 但其他算子可以访问 重装halcon x86

小程序裂变怎么做?小程序裂变机制有哪些?

做了小程序就等于“生意上门”?其实并不是这样。小程序跟流量平台较为明显的区别就在于小程序并非“自带流量”,而是需要企业利用自己的营销推广能力来建立引流渠道,从而完成用户的拉新和留存、转化。因此,想要用小程序来增加自己…

RaabitMQ(三) - RabbitMQ队列类型、死信消息与死信队列、懒队列、集群模式、MQ常见消息问题

RabbitMQ队列类型 Classic经典队列 这是RabbitMQ最为经典的队列类型。在单机环境中,拥有比较高的消息可靠性。 经典队列可以选择是否持久化(Durability)以及是否自动删除(Auto delete)两个属性。 Durability有两个选项,Durable和Transient。 Durable表…

3分钟创建新生分班查询二维码,无需技术、0成本

作为教师,我们深知分班是一项极其重要的任务,需要综合考虑学生的性格、能力和兴趣等多个方面,以确保每个学生都能够获得最佳的学习环境和成绩。在本文中,我将分享一种便捷的方式来告知家长有关分班录取情况的方法。 通常&#xf…

python中 “”和“and”的区别

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 1、“&”和“and”有本质区别,属于不同类型的运行符号。& 是位运算;and 是逻辑运算。 2、首先是&:该运输符属于字符串的连接运算符,例如,“w“&”c…

【LeetCode】数据结构题解(9)[复制带随机指针的链表]

复制带随机指针的链表 😉 1.题目来源👀2.题目描述🤔3.解题思路🥳4.代码展示 所属专栏:玩转数据结构题型❤️ 🚀 >博主首页:初阳785❤️ 🚀 >代码托管:chuyang785❤…

el-select与el-tree结合使用,实现select框下拉使用树形结构选择数据

使用el-select与el-tree&#xff0c;实现如下效果&#xff0c; 代码如下&#xff1a; 注意点&#xff1a;搜索input框的代码一点放在option上面&#xff0c;不要放在option里面&#xff0c;否则一点击搜索框&#xff0c;下拉框就会收起来&#xff0c;不能使用。 <el-select…

wxwidgets Ribbon使用wxRibbonToolBar实例

wxRibbonToolBar就是工具栏&#xff0c;一下是实现的效果&#xff0c;界面只是功能展示&#xff0c;没有美化 实现代码如下所示&#xff1a; MyFrame::MyFrame(const wxString& title) : wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxSize(800, 600)) …

锐捷VSU技术理论与实验

目录 VSU涉及的相关基础概念 VSU的2种工作模式 VSU的3种设备角色 VSU的4种设备状态 VSU的分裂与合并 VSU建立过程 双主检测 VSU报文转发原理 VSU命令配置 配置VSU 配置双主检测 VSU涉及的相关基础概念 域编号&#xff08;Domain ID&#xff09; Domain ID是VSU的标…

【C++】bind包装器

bind包装器 调用bind的一般形式&#xff1a;auto newCallable bind(callable,arg_list); 其中&#xff0c;newCallable本身是一个可调用对象&#xff0c;arg_list是一个逗号分隔的参数列表&#xff0c;对应给定的 callable的参数。 当我们调用newCallable时&#xff0c;newCa…

【硬件设计】模拟电子基础三--集成运算放大电路

模拟电子基础三--集成运算放大电路 一、集成运算放大器1.1 定义、组成与性能1.2 电流源电路1.3 差动放大电路1.4 理想运算放大器 二、集成运算放大器的应用2.1 反向比例运算电路2.2 同向比例运算电路2.3 反向加法运算电路2.4 反向减法运算电路2.5 积分运算电路2.6 微分运算电路…