升级你的GitHub终端认证方式:从密码到令牌

升级你的GitHub终端认证方式:从密码到令牌

前言

GitHub官方在2021年8月14日进行了一次重大改变,它将终端推送代码时所需的身份认证方式从密码验证升级为使用个人访问令牌(Personal Access Token)。这个改变引起了一些新的挑战,例如当你试图进行push操作时,你可能会遇到以下错误信息:remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.

这次变革的目的在于提高GitHub账户的安全性,并为开发者提供更可靠的身份认证方式。以前,我们可以通过在终端输入密码来进行验证,但现在,我们需要使用个人访问令牌来代替。这个令牌相当于一个密码,但它更加安全,因为它的使用受到更严格的限制,只能用于特定的操作。

使用个人访问令牌的好处是显而易见的:它可以有效地保护你的GitHub账户免受未经授权的访问。而且,个人访问令牌的生成和管理非常简单,你可以在GitHub的设置中轻松创建和获取它们。一旦你生成了个人访问令牌,你可以将其配置到你的终端,使得每次进行代码推送时都能得到正确的身份验证。

虽然这次改变可能需要我们稍微调整一下我们的工作流程,但它带来的好处是无可比拟的。使用个人访问令牌,我们可以确保我们的代码仓库得到充分的保护,同时也为我们的开发过程提供了更加便捷和安全的体验。

就是这样!在接下来的文章中,我们将探讨如何生成和配置个人访问令牌,以及如何在GitHub上进行SSH免密登录。我们将提供详细的步骤和指导,确保你能够顺利地适应这个新的身份认证方式。

希望这些信息能对你有所帮助,并让你更加了解GitHub身份认证的最新变化。继续阅读,让我们一起探索这个新的安全世界吧!😊🚀

配置SSH key

  1. 进入当前用户的home目录,打开终端后直接输入以下命令(mac电脑打开终端后就是home目录,直接输入一下命令即可查看)

    cd .ssh # 进入到.ssh 文件目录下
    ls -l			# 查看当前目录下有哪些文件
    

    image-20230707174325053

  2. 删除已经存在的.ssh目录

    rm -r .ssh/ 	# 删除已经存在的.ssh目录
    

    这里不执行这一步也可以,因为即使.ssh目录下有相关文件,最后在生成密钥的时候会询问是否重写其中的内容,点击确认即可。

  3. 运行命令生成.ssh 密钥目录

    ssh-keygen -t rsa -C "yourmail@example.com" #建议填写当时创建 GitHub 账号时使用的邮箱
    
    image-20230707145807464

    一直enter确认就好了,完成后在ssh文件夹会生成一个公钥 id_rsa.pub 和一个私钥 id_rsa,我们只用公钥里的内容就行这里可能会让你填写密码或者其他信息,一律按住回车键即可。此时显示已经重写了id_ras文件,接下来执行一下命令:

     cd .ssh # 进入到.ssh 文件目录下ls -l # 查看当前文件夹下的所有文件vim id_rsa.pub # 进入该文件中,并复制其中内容-----> 拷贝公钥
    

    ⚠️:win电脑需要开启隐藏文件夹设置才能看见.ssh文件

    image-20230707150251071

登录 GitHub

  1. 登录 GitHub,点击用户头像 -> Settings -> SSH and GPG keys。点击 New SSH key 创建新的 Secure Shell Key.

    image-20230707150738302

  2. 复制id_rsa.pub文件中的内容到 key

    image-20230707151054630

    Title 没要求的话随便起就行,最好是备注一下哪个设备设置了SSH key,之后 Add SSH key 输入密码确认即可.

    完成上述操作后,在终端再次进行push等操作时github会直接跳过登录身份验证,直接连接到github服务器进行操作.

测试

接下来在终端输入敲入:

 ssh -T git@github.com

image-20230707151423721

看到这个就表示连接成功了,新添加到github上的秘钥左边的点一开始是灰色的,终端执行这个命令后,刷新网页会看到灰色点变成了绿色。到此为止本地的ssh key已经配置好了

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

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

相关文章

【LeetCode】283.移动零

题目 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,1,0,3,12]输出: [1,3,12,0,0]示例 2: 输入: nums [0]输…

Linux 安装软件的几种方式

哈喽大家好,我是咸鱼 相信小伙伴们都知道在 Linux 中,安装软件一般有三种方式 yum 安装rpm 安装源码编译安装 咸鱼平时三种安装方式都会用,但是具体原理和区别却没有去深入了解过 结果上周部门刚来的新人问我这几种安装方式的时候&#x…

正则回溯整理

目录 一、回溯绕过 二、防止正则表达式回溯绕过的方法 三、PHP利用PCRE回溯次数限制绕过某些安全限制 1、 首先,来看一段PHP代码 2、正则回溯的过程 3、PHP的pcre.backtrack_limit 限制利用 一、回溯绕过 正则表达式的回溯绕过是指通过构造恶意输入&…

【css】属性选择器分类

属性选择器类型示例说明[attribute][target]选择带有 target 属性的所有元素[attributevalue][target_blank]选择带有 target“_blank” 属性的所有元素[attribute~value][title~flower]选择带有包含 “flower” 一词的 title 属性的所有元素[attribute|value][lang|en]选择带有…

每天一道leetcode:剑指 Offer 32 - III. 从上到下打印二叉树 III(中等广度优先遍历)

今日份题目: 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。 示例 给定二叉树: [3,9,20,null,null,15,7…

lwip不同的socket分别作为监听和客户端连接

在LWIP中,一个网络设备(如以太网卡)可以创建多个socket,用于处理不同的网络连接。一般,你可以创建一个socket用于监听(listen)连接,另一个socket用于主动发起(connect&am…

Elasticsearch概述和DSL查询总结

目录 Elasticsearch概述 1. 什么是Elasticsearch 2. 作用 3. 特点 DSL(Domain Specifit Language)特定领域语言: 概念和作用 查询代码总结 最后附项目准备 1.创建搜索工程(maven工程) 2.配置文件 application…

Win7 专业版Windows time w32time服务电脑重启后老是已停止

环境: Win7 专业版 问题描述: Win7 专业版Windows time w32time服务电脑重启后老是已停止 解决方案: 1.检查启动Remote Procedure Call (RPC)、Remote Procedure Call (RPC) Locator,DCOM Server Process Launcher这三个服务是…

uniapp获取当前页面高度

设置动态高度:style"{height: pageHeightpx}" <view class"uni-content" :style"{height: pageHeightpx}" >... </view>获取当前页面高度&#xff1a; onLoad() {// 获取当前窗口高度this.pageHeight uni.getSystemInfoSync().wi…

RocketMQ Learning(一)

目录 一、RocketMQ 0、RocketMQ的产品发展 1、RocketMQ安装 1.1、windows下的安装 注意事项 1.2、Linux下的安装 1.3、源码的安装 1.4、控制台 2、消息发送方式 2.1、发送同步消息 2.2、发送异步消息 2.3、单向发送 3、消息消费方式 3.1、负载均衡模式&#xff0…

SSM(Vue3+ElementPlus+Axios+SSM前后端分离)--具体功能实现【三】

文章目录 SSM--功能实现实现功能04-添加家居信息需求分析/图解思路分析代码实现注意事项和细节 实现功能05-显示家居信息需求分析/图解思路分析 代码实现 SSM–功能实现 实现功能04-添加家居信息 需求分析/图解 思路分析 完成后台代码从dao -> serivce -> controller ,…

自动化应用杂志自动化应用杂志社自动化应用编辑部2023年第11期目录

数据处理与人工智能 大数据视域下无轨设备全生命周期健康管理技术的研究 赖凡; 1-3 三维激光扫描结合无人机倾斜摄影在街区改造测绘中的技术应用 张睿; 4-6 井上变电站巡检机器人的设计与应用 刘芳; 7-9 《自动化应用》投稿邮箱&#xff1a;cnqikantg126.com 基于机…

前端面试经典算法题

前言 现在面试流行考核算法&#xff0c;做过面试官&#xff0c;也被面试。问算法对面试官来说&#xff0c;是一种解脱&#xff0c;找出了一个看似很高明且能偷懒的办法选择人&#xff0c;避免了不知道问啥的尴尬&#xff1b;被面试者&#xff0c;也找到了一种新的面试八股文&am…

机器学习笔记

文章目录 编码器-解码器Batch Normalization好处 编码器-解码器 第二个input与transformer中的解码器类似。 Batch Normalization 尽量使得w1和w2之间呈现为正圆 训练模型的时候&#xff0c; μ \mu μ和 σ \sigma σ不可以认为是常数&#xff0c;而是包含数据的变量&…

finereport中自定义图表提示

点击后把该分类下所有的系列都展示 function(){ var points this.points; var value "" this.category; for(var i 0;i < points.length;i) { if(points[i].series.visible){ value "●&qu…

【K8S】pod 基础概念讲解

目录 Pod基础概念&#xff1a;在Kubrenetes集群中Pod有如下两种使用方式&#xff1a;pause容器使得Pod中的所有容器可以共享两种资源&#xff1a;网络和存储。总结&#xff1a;kubernetes中的pause容器主要为每个容器提供以下功能&#xff1a;Kubernetes设计这样的Pod概念和特殊…

部署SpringBoot项目在服务器上,并通过swagger登录

1.项目编译打包 2.上传jar包到服务器并启动 xftp将打包好后的jar包传到虚拟机指定路径 java -jar执行该jar包 3.通过swagger登录 输入后点击下面的执行按钮 会得到一个tocken 4.将tocken放到postman的Headers中 5.修改url 例如我本地测试是http://localhost:8080/接口名&am…

Vue命名规范

JS文件命名 一般采用的是小驼峰命名法&#xff0c;如 pieChartHelp 第一个单词小写&#xff0c;其他单词首字母大写 Components 文件命名 一般采用的是大驼峰命名法&#xff0c;如PieChart 所有单词的首字母大写 常量命名 一般全部大写&#xff0c;每个单词使用分隔符隔开&…

一文读懂|RDMA原理

什么是DMA DMA全称为Direct Memory Access&#xff0c;即直接内存访问。意思是外设对内存的读写过程可以不用CPU参与而直接进行。我们先来看一下没有DMA的时候&#xff1a; 无DMA控制器时I/O设备和内存间的数据路径 假设I/O设备为一个普通网卡&#xff0c;为了从内存拿到需要…

【有关数据库的编码格式和导出备份】

问题1&#xff1a;前端页面可以正常插入数据到数据库mysql中&#xff0c;但是却显示不了数据库中的数据内容&#xff1f; 分析&#xff1a;通过尝试&#xff0c;当数据插入的全部都是英文时&#xff0c;可以正常显示数据&#xff0c;但是出现中文时&#xff0c;则连带着全部数…