Git的安装以及SSH配置

前言

近期工作需要,所以版本管理工具要用到Git,某些操作需要ssh进行操作,在某次操作中遇到:git bash报错:Permission denied, please try again。经排查是ssh没有配置我的key,所以就借着这篇文章整理了一下关于Git的安装以及SSH配置过程。

可以外网的用户安装步骤

如果可以联网的用户直接键入下面这条命令即可

yum -y install git

离线用户安装步骤

下载git安装包

到达下面这个地址找到Linux的安装包即可。

https://git-scm.com/downloads

如下图所示,首先点击老本本下载,超导对应的Linux安装包

在这里插入图片描述

如下图找到适合自己的tar.gz包即可。

在这里插入图片描述

安装Git依赖(可跳过)

安装Git之前使用下面这段命令对需要的依赖进行安装一下,这一步我们可以先跳过,因为现在Linux环境基本不缺乏这些依赖,我们可以在后续的步骤中找到确实的依赖然后到网上下载对应的包手动下载即可,笔者这一步只是告知读者我们可能需要那些依赖而已。

yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

解压tar.gz包

我们将下载的git安装包上传到服务器上,肉键入下面的命令进行解压。

tar -zxvf git-v2.8.0.tar.gz

进入解压后的git目录进行编译

完成解压后,需要对git进行编译。

cd git-2.8.0/


键入下面这段命令进行解压

 make prefix=/usr/local all

安装git

直接键入下面这条命令完成安装。

 make prefix=/usr/local install

查看版本号,若存在则安装成功

git --version

如下所示,这就说明git安装完成了。

git version 1.8.3.1

Git仓库SSH配置

为什么需要SSH

我们日常代码可能会通过GitHub或者gitee来管理,如果希望push和pull的速度快一些,则最好使用ssh的方式和远程仓库建立连接。所以完成Git安装之后我们还需要配置SSH提升和远程仓库交互的速度。

创建SSH密钥

注意: GitHub 在 2022 年 3 月 15 日之后将不再支持 RSA 算法生成的密钥,原因是 RSA 不够安全,而笔者之前一直是使用如下命令生成密钥对的:

ssh-keygen -t rsa -C "邮箱"

所以,笔者在2023.7.2修改了文章的加密算法,选择 ed25519。

对于Linux用户,直接命令行即可。对于Windows我们直接打开git bash一样可以执行这个操作。

ssh-keygen -t ed25519 -C "xxxxxx@qq.com"
eval `ssh-agent`
ssh-add ~/.ssh/id_ed25519

查看密钥

Linux用户可以通过这条命令查看密钥,对于windows用户可以通过everything等工具全局搜索到这个文件的位置。

cat ~/.ssh/id_ed25519.pub

将id_ed25519.pub内容复制到码云或者GitHub

在这里插入图片描述

进行克隆测试,若文件克隆成功,则说明配置成功

将对应机子的公钥贴到远程代码仓之后,我们不妨做个测试,建立一个项目使用ssh的方式看看能不能将项目拉下来。

git clone git@gitee.com:xxxxx/linux_git_test.git

以笔者为例,仓库被完整的拉取下来了,这就说明本地配置成功了。

在这里插入图片描述

补充windows用户的一些问题

注意:完成上述ssh key生成且配置到git上后。如果为windows且使用的是TortoiseGit使用git clone时可能会报No supported authentication methods available的错误。原因很简单,笔者在windows下生成ssh key等操作都是使用git bash,这些设置只对git bash有效。所以当我们使用git bash进行pull代码操作时没有任何问题,所以我们在使用TortoiseGit进行clone时需先进行如下配置

  1. 右键TortoiseGit -> Settings
  2. 找到network将ssh client设置为gitbash的bin目录下的ssh.exe
    在这里插入图片描述

参考文献

TortoiseGit提示No supported authentication methods available错误: https://blog.csdn.net/Jeffxu_lib/article/details/112259246

解决GitHub报错You‘re using an RSA key with SHA-1, which is no longer allowed. Please use a newer client: https://blog.csdn.net/wangpaiblog/article/details/124416005

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

典型的ETL使用场景

典型的ETL使用场景 ETL( Extract,Transform,Load)是一种用于数据集成和数据转换的常用技术。它主要用于从多个数据源中提取数据,对数据进行清洗、转换和整合,最后加载到目标系统中。ETL 的使用场景非常广泛,下面将介绍…

Windows系统Java开发环境安装

总结一下Java软件开发工程师常见的环境的安装,仅限Windows环境。 以下下载链接均来自官网,网络条件自己克服。 目录 1. JDKJDK Oracle 官网下载地址配置系统环境变量 2. Mavenapache maven 官网地址本地仓库和中央仓库配置配置系统环境变量 3. GitGit 官…

【Docker一】Docker架构、镜像操作和容器操作

一、docker基本管理和概念 1、概念 docker:开源的应用容器引擎。基于go语言开发的。运行在Linux系统中的开源的轻量级的“虚拟机” docker的容器技术可用在一台主机上轻松到达为任何应用创建一个轻量级到的,可移植的,自给自足的容器 dock…

二维码智慧门牌管理系统:提升管理效率

文章目录 前言一、快速准确录入:提高工作效率二、多样化支付:提供高效支付功能三、智能化管理:提高效率与准确性 前言 科技时代的必备工具 在当今科技高速发展的时代,二维码智慧门牌管理系统已成为各行业提高管理效率和准确性的重…

智能仪表板DevExpress Dashboard v23.1 - 支持自定义样式创建

使用DevExpress Analytics Dashboard,再选择合适的UI元素(图表、数据透视表、数据卡、计量器、地图和网格),删除相应参数、值和序列的数据字段,就可以轻松地为执行主管和商业用户创建有洞察力、信息丰富的、跨平台和设…

C语言——字符函数和字符串函数(一)

📝前言: 这篇文章对我最近学习的有关字符串的函数做一个总结和整理,主要讲解字符函数和字符串函数(strlen,strcpy和strncpy,strcat和strncat)的使用方法,使用场景和一些注意事项&…

gin投票项目5

对应视频V3版本 1.优化用户注册的功能 增加扩展字段 1.增加一个UUID字段,vachar(50)。 2.增加一个UUID的唯一索引。 UUID具有全局唯一性; 方法:在数据库中新建一个列,名为uuid并移至主键下方&#xf…

CRM系统选择技巧,什么样的CRM系统好用?

SaaS行业发展迅速,更多的企业逐渐选择CRM管理系统。打开搜索引擎,有非常多的结果。怎样在数十万个搜索结果中选择适合您的CRM系统?下面我们将聊聊,怎样选择CRM系统。 第一步:明确自身需求 重要性:每家企业…

POJ1182 食物链(并查集)

题目展示 Description 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用…

【Linux】探索Linux进程状态 | 僵尸进程 | 孤儿进程

最近,我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念,而且内容风趣幽默。我觉得它对大家可能会有所帮助,所以我在此分享。点击这里跳转到网站。 目录 一、进程状态1.1运行状态1.2阻塞状态1.3挂起状态 二、具体L…

在UE中使用Python设置枚举类属性值的问题

目标 在UE编辑器中使用Python设置枚举类属性值会遇到些问题,本篇记录了这些问题的解决方法。 1. 设置数值类属性值 先在编辑器中选择一个Actor,然后运行下面Python代码: actor unreal.EditorLevelLibrary.get_selected_level_actors()[0…

【JavaEE】线程池

作者主页:paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文于《JavaEE》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造&…

2024年网络安全竞赛-Web安全应用

Web安全应用 (一)拓扑图 任务环境说明: 1.获取PHP的版本号作为Flag值提交;(例如:5.2.14) 2.获取MySQL数据库的版本号作为Flag值提交;(例如:5.0.22) 3.获取系统的内核版本号作为Flag值提交;(例如:2.6.18) 4.获取网站后台管理员admin用户的密码作为Flag值提交…

我的隐私计算学习——隐私集合求交(1)

笔记内容来自多本书籍、学术资料、白皮书及ChatGPT等工具,经由自己阅读后整理而成。 (一)PSI的介绍 隐私计算关键技术:隐私集合求交(PSI)原理介绍 隐私计算关键技术:隐私集合求交&#xff08…

【基于Flask、MySQL和Echarts的热门游戏数据可视化平台设计与实现】

基于Flask、MySQL和Echarts的热门游戏数据可视化平台设计与实现 前言数据获取与清洗数据集数据获取数据清洗 数据分析与可视化数据分析功能可视化功能 创新点结语 前言 随着游戏产业的蓬勃发展,了解游戏销售数据对于游戏从业者和游戏爱好者都至关重要。为了更好地分…

【Python数据结构与算法】—— 搜索算法 | 期末复习不挂科系列

​ 🌈个人主页: Aileen_0v0🔥系列专栏: 数据结构与算法💫个人格言:"没有罗马,那就自己创造罗马~" 这篇博客主要探索的是计算机科学常见问题---搜索算法 “时间紧,任务重!” 话不多说,开始今天…

高工氢电年会 | 未势能源解超朋博士受邀出席并做主题演讲

12月4日,以“战略重构 商业觉醒”为主题的2023高工氢电年会在深圳举办,未势能源副总裁解超朋博士受邀出席开幕式论坛,以《把握机遇、直面挑战,迎接氢车规模化推广时代》为主题发表演讲,并参与圆桌论坛研讨。 氢势已来&…

Linux系统中进程的背景(只从数据层面和硬件层面分析)

目录 1、冯诺依曼体系 2、管理的本质 3、 操作系统是如何对硬件进行管理的 4、 计算机的软硬件结构 5、 进程的组成 1、冯诺依曼体系 冯诺依曼是很早就提出的一个体系结构,他是将计算机分成五个部分,输入设备、输出设备、存储器、运算器和控制器。其中运…

Nature Communications 高时空分辨率的机器人传感系统及其在纹理识别方面的应用

前沿速览: 现有的触觉传感器虽然可以精确的检测压力、剪切力和应变等物理刺激,但还难以像人类手指一样通过滑动触摸,同时获取静态压力与高频振动来实现精确的纹理识别。为了解决这一问题,来自南方科技大学的郭传飞团队提出了衔接…

英伟达危机大爆发!一夜之间,四面楚歌

今年以来,AI大模型明争暗斗、百花齐放。 但不管各种大模型打的有多厉害,很多人都认为“卖铲子”的英伟达才是最大赢家。 看一下英伟达今年的股票就知道英伟达赚的是多么盆满钵满。 英伟达CEO黄仁勋在发布 H200显卡时,应该是今年最意气风发的…