解决在linux上git clone 时报错 git@gitee.com: Permission denied (publickey). Could not read from remote repo

本文主要是介绍解决在linux上git clone 时报错 git@gitee.com: Permission denied (publickey). Could not read from remote repo,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

👨‍🎓博主简介

  🏅云计算领域优质创作者
  🏅华为云开发者社区专家博主
  🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!
🐋 希望大家多多支持,我们一起进步!😄
🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏 ⭐️ 加关注+💗


文章目录

  • 报错详情:
  • 原因分析:
  • 解决方法:

报错详情:

今天在gitee上看到一个比较感兴趣的项目,于是就想下载下来研究研究,结果git clone 克隆的时候报错了,报错如下:

git@gitee.com: Permission denied (publickey).fatal: Could not read
from remote repository.Please make sure you have the correct access
rights and the repository exists.

在这里插入图片描述

原因分析:

Permission denied (publickey) 没有权限的publickey(公锁) ,出现这错误一般是以下两种原因:

  • 客户端与服务端未生成 ssh key
  • 客户端与服务端的ssh key不匹配

最后找到问题的原因了,因为没有正确设置公私钥,导致没有权限操作。所以需要生成一次ssh key ,服务端也需要配置一下即可;

解决方法:

  • 1、先查看一下自己有没有生成过public key
cat ~/.ssh/id_rsa.pub 

如果有的话,那应该是以ssh-rsa 开头的,以生成公钥时注册的邮箱为结尾的。

在这里插入图片描述

我看了一下,这里是有公钥的,那么为什么还会报错呢,看了看邮箱,因为这个以前同事也在用,可能是他生成的公钥吧,邮箱地址是他的;所以是因为是不同的邮箱,也就是两个账号,所以用不了,但我们要知道设定时的密码,要不然也弄不了,索性,我就重新生成了一个,注意:这里再次生成公钥的时候会覆盖以前的,所以有必要时先备份在重新生成。

  • 2、生成公私钥
ssh-keygen -t rsa -C “xxxxx@xxx.com”

这里的xxxxx@xxx.com填写你自己的邮箱账号;

在这里插入图片描述

  • 3、将public key添加到码云

复制刚刚生成的公钥:

cat ~/.ssh/id_rsa.pub 

在这里插入图片描述

打开自己的Gitee的设置–>ssh公钥:https://gitee.com/profile/sshkeys

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

在这里插入图片描述

然后需要做一个安全认证,需要您输入gitee的密码,最后就添加成功了。

  • 4、可以自己验证一下是否成功
ssh -T git@gitee.com

这里需要输入自己设置公钥时的密码;最后出现access即成功。

在这里插入图片描述

  • 5、然后我们就可以clone克隆仓库了
git clone git@gitee.com:carefree-state/mara-circle-july-2023.git

在这里插入图片描述

这样就克隆成功了。

在这里插入图片描述

这篇关于解决在linux上git clone 时报错 git@gitee.com: Permission denied (publickey). Could not read from remote repo的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

C++右移运算符的一个小坑及解决

《C++右移运算符的一个小坑及解决》文章指出右移运算符处理负数时左侧补1导致死循环,与除法行为不同,强调需注意补码机制以正确统计二进制1的个数... 目录我遇到了这么一个www.chinasem.cn函数由此可以看到也很好理解总结我遇到了这么一个函数template<typename T>unsigned

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

《解决升级JDK报错:modulejava.basedoesnot“opensjava.lang.reflect“tounnamedmodule问题》SpringBoot启动错误源于Jav... 目录问题描述原因分析解决方案总结问题描述启动sprintboot时报以下错误原因分析编程异js常是由Ja

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

MySQL 表空却 ibd 文件过大的问题及解决方法

《MySQL表空却ibd文件过大的问题及解决方法》本文给大家介绍MySQL表空却ibd文件过大的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录一、问题背景:表空却 “吃满” 磁盘的怪事二、问题复现:一步步编程还原异常场景1. 准备测试源表与数据