Git错误记录 — git@github.com: Permission denied (publickey)

2023-10-24 19:31

本文主要是介绍Git错误记录 — git@github.com: Permission denied (publickey),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、记录 1

  1. 描述信息:

    使用命令ssh -T git@github.com测试公钥是否添加成功时,报错;

    #提示信息(github)
    git@github.com: Permission denied (publickey)
    #提示信息(gitee)
    git@gitee.com: Permission denied (publickey)
    
  2. 错误场景:

    Win10环境下,为githubgitee配置SSH,实现免密登录

    配置步骤如下:

    • git bash中输入命令— ssh-keygen -t rsa -C "XXX@email.com",回车
    • 这里因为我是嫌之前配置的名字是默认的,没有标识度,所以才重新配置的
    • 在步骤1中,如果你是默认回车enter 三次的话,在使用ssh连接github是没有这个问题的,同时会在目录C:\Users\Administrator\.ssh下产生id_rsaid_rsa.pub两个文件,到github默认配置就可以了
    • 而我是在第一次回车时,修改了文件名,输入/c/Users/Administrator/.ssh/id_github_rsa,即在默认目录下生成id_github_rsa文件,后面不设置密码,按两次回车,就生成了id_github_rsaid_github_rsa.pub两个文件,这样子标识度就高了,生成id_gitee_rsa密钥,也是一样的步骤
    • 登录github,在Settings—>SSH and GPG keys—>New SSH key中,将id_github_rsa.pub公钥内容添加到Key中,Title可以随便填,最好是带有描述信息的,类似Win10-Clientgitee的配置也是差别多的
    • 测试ssh keys是否设置成功,在git bash中输入命令—ssh -T git@github.com 或者 ssh -T git@gitee.com,出现描述信息中的错误
  3. 解决方案:

    1、方法一:使用默认名字

    • 重新生成密钥对,不指定名字,使用默认名字 (老老实实)

    2、方法二:使用ssh-agent代理管理git私钥

    • git bash中输入命令:

      #启动 agent
      eval `ssh-agent -s`  #(注意这里是反引号)
      #添加私钥(自己定义的私钥名)
      ssh-add ~/.ssh/id_github_rsa 
      
    • 再次输入命令—输入命令—ssh -T git@github.com 或者 $ ssh -T git@gitee.com,就能成功连接了

    • 但是我发现,每次退出git bash,再连接时,又会出现同样的错误,又需要走一遍方法二(小麻烦)

    3、方法三:连接时指定私钥文件名

    • 指定自己重命名的私钥文件名连接:

      # 例如我的私钥是`id_github_rsa`
      ssh -T -i id_github_rsa git@github.com
      

      在这里插入图片描述

    • 测试连接成功,但感觉还是有点小麻烦

    4、方法四Vim修改SSH配置文件

    • 注意,这一步还是有点小坑的,配置文件需要使用Root管理员才能修改,否则修改完,无法保存

    • Windows下没有sudo命令,所以我们需要这么做,在Windows任务栏左侧使用搜索框,搜索git bash,鼠标单击右键,以管理员身份运行

    • 这时候git bash便具备权限了,输入命令—vim /etc/ssh/ssh_config,在Vim编辑器中做以下操作:

      Host *之上添加自己的自定义设置信息:

      操作步骤:1、按 i 进入编辑模式,2、添加下面的配置信息 ,3、按shift + :输入wq,保存退出

      #####################################
      #By kaltons
      Host github.com			
      HostName github.com		
      PreferredAuthentications publickey
      IdentityFile ~/.ssh/id_github_rsa#By kaltons
      Host gitee.com
      HostName gitee.com
      PreferredAuthentications publickey
      IdentityFile ~/.ssh/id_gitee_rsa
      #####################################
      
      # HostName 				  —— 这个是真实的域名地址
      # Host 					  —— 自定义别名,但会影响git相关命令,例`ssh -T git@github.com`,@别名
      #PreferredAuthentications —— 配置登录时用什么权限认证--可设为publickey,password publickey,keyboard-								 interactive等
      #IdentityFile 			  —— 前面自定义配置的私钥位置,例如:~/.ssh/id_github_rsa
      
    • 例如我的配置信息图

      在这里插入图片描述

    • 再次测试ssh keys是否设置成功

      在这里插入图片描述

      这时候githubgitee都能够连接成功了

    • 推荐使用方法四,可以自定义控制不同的SSH Keys连不同的Git环境

这篇关于Git错误记录 — git@github.com: Permission denied (publickey)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/277300

相关文章

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

C++工程编译链接错误汇总VisualStudio

目录 一些小的知识点 make工具 可以使用windows下的事件查看器崩溃的地方 dumpbin工具查看dll是32位还是64位的 _MSC_VER .cc 和.cpp 【VC++目录中的包含目录】 vs 【C/C++常规中的附加包含目录】——头文件所在目录如何怎么添加,添加了以后搜索头文件就会到这些个路径下搜索了 include<> 和 include"" WinMain 和

Javascript高级程序设计(第四版)--学习记录之变量、内存

原始值与引用值 原始值:简单的数据即基础数据类型,按值访问。 引用值:由多个值构成的对象即复杂数据类型,按引用访问。 动态属性 对于引用值而言,可以随时添加、修改和删除其属性和方法。 let person = new Object();person.name = 'Jason';person.age = 42;console.log(person.name,person.age);//'J

vcpkg安装opencv中的特殊问题记录(无法找到opencv_corexd.dll)

我是按照网上的vcpkg安装opencv方法进行的(比如这篇:从0开始在visual studio上安装opencv(超详细,针对小白)),但是中间出现了一些别人没有遇到的问题,虽然原因没有找到,但是本人给出一些暂时的解决办法: 问题1: 我在安装库命令行使用的是 .\vcpkg.exe install opencv 我的电脑是x64,vcpkg在这条命令后默认下载的也是opencv2:x6

记录AS混淆代码模板

开启混淆得先在build.gradle文件中把 minifyEnabled false改成true,以及shrinkResources true//去除无用的resource文件 这些是写在proguard-rules.pro文件内的 指定代码的压缩级别 -optimizationpasses 5 包明不混合大小写 -dontusemixedcaseclassnames 不去忽略非公共

数控系统资料记录

数控技术:数控系统刀补功能的软件实现及其仿真--数控仿真程序开发实战 https://github.com/mai4567/CNC 下载编译报错:error: src/dxflib.a: 没有那个文件或目录: 解决:下载dxflibhttps://www.ribbonsoft.com/en/dxflib-downloads,下载完后编译,编译后得到libdxflib.a,替换掉项目makefi

pixel_link记录

export PYTHONPATH=/path2to/pixel_link/pylib/src:$PYTHONPATH   https://blog.csdn.net/northeastsqure/article/details/83655200   https://blog.csdn.net/u011440558/article/details/78606662   报错: All

Git的安装以及使用

一.简单介绍 1.1版本控制 版本控制是指对软件开发过程中各种程序代码,配置文件及说明文档等文件变更管理,是软件配置管理的核心思想之一。 版本控制最重要的内容是追踪文件的变更,它将什么时候,什么人更改了文件的什么内容等信息忠实的记录下来。除此之外,版本控制的另一重要的功能是并行开发。软件开发往往是多人协同作业,版本控制可以有效地解决版本的同步以及不同开发者之间的开发通信问题,提高开发效率。

vscode-创建vue3项目-修改暗黑主题-常见错误-element插件标签-用法涉及问题

文章目录 1.vscode创建运行编译vue3项目2.添加项目资源3.添加element-plus元素4.修改为暗黑主题4.1.在main.js主文件中引入暗黑样式4.2.添加自定义样式文件4.3.html页面html标签添加样式 5.常见错误5.1.未使用变量5.2.关闭typescript检查5.3.调试器支持5.4.允许未到达代码和未定义代码 6.element常用标签6.1.下拉列表

BD错误集锦9——查询hive表格时出错:Wrong FS: hdfs://s233/user/../warehouse expected: hdfs://mycluster

集群环境描述:HDFS集群处于HA模式下,同时启动了YARN\JN\KAFKA\ZK。 现象: FAILED: SemanticException Unable to determine if hdfs://s233/user/hive/warehouse/mydb.db/ext_calllogs_in_hbase is encrypted: java.lang.IllegalArgument