linux安装git步骤;基于yum、dnf、源码安装【非常详细】

news2024/9/29 5:25:12

这里写目录标题

    • 一 dnf安装
    • 二 yum安装
    • 三 源码安装
      • 1 基于 RPM 的发行版(Fedora/RHEL/RHEL衍生版)
      • 2 基于 Debian 的发行版(Debian/Ubuntu/Ubuntu-derivatives)
      • 3 yum软件包管理器来安装,这个一般是CnetOS Stream 8以前的版本才这样安装
        • 3.0 卸载git
        • 3.1 安装依赖包,等一分钟左右,会下载很多包,最后出现完成或则complete
        • 3.2 下载、解压
        • 3.3 移动文件夹并改名字、配置
        • 3.4 安装,又是一大堆输出
        • 3.5 配置全局变量
    • 四 windows安装请移步

官网地址https://git-scm.com/
在这里插入图片描述

安装地址
https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git
在这里插入图片描述

本文客户端使用的是国产的FinalShell(下载安装点击下面的连接)
Linux连接工具(二)FinalShell下载及安装步骤

虚拟机配置建议稍微大点,如图所示。不然安装的时候会非常慢
在这里插入图片描述

一 dnf安装

官方推荐使用dnf(新一代软件包管理器,CentOS Stream 8及以后的版本才使用的)来实现二进制安装

准确来说
yum是fedora21及以前
dnf是fedora22及以后

sudo dnf install git-all

sudo是以管理员的权限运行命令

linux系统使用的是VMware Workstation17虚拟机,镜像为CentOS Stream9,系统语言设置了简体中文,命令行中文比较多

在这里插入图片描述
按提示输入y
在这里插入图片描述
输入y导入公钥
在这里插入图片描述
安装完成出现完毕!
英文是complete!

输入git --version来查看git版本,虽然不是最新版,但比较新的版本也差不了几天

在这里插入图片描述
2.41.0是2023年4月23日发布的(目前没有2.41.1的)
2.39.3是2023年4月23日发布的

git发版历史页面
在这里插入图片描述
在这里插入图片描述

二 yum安装

CentOS Stream 8以前的版本(不包括)二进制安装只能使用yum(软件包管理器)来安装
CentOS Stream 8及以后的版本虽然也有yum,但是底层使用的是dnf的包(方便老用户平滑过渡)

这个镜像是用的CentOS Linux7
查看Linux版本cat /etc/redhat-release
通过二进制包来安装

# 安装
yum -y install git

# 卸载
yum remove git

# 查看版本
git --version

-y可以跟在yum 后面。表示如果有询问,自动同意
在这里插入图片描述

在这里插入图片描述

这种方式安装的git版本较低,1.8.3.1是2013年10月10日发行的版本。1.8以后的版本官方就不再维护yum源二进制安装方式了。如果只是用来推拉代码,其实也够用,而且安装非常方便

在这里插入图片描述
这种方式包的位置在cd /usr/libexec/git-core

在这里插入图片描述

三 源码安装

1 基于 RPM 的发行版(Fedora/RHEL/RHEL衍生版)

sudo dnf install dh-autoreconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel

# 为了添加文档的多种格式(doc、html、info),需要以下附加的依赖:
sudo dnf install asciidoc xmlto docbook2X

sudo dnf install getopt

# 解决二进制文件名的不同问题
sudo ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi

2 基于 Debian 的发行版(Debian/Ubuntu/Ubuntu-derivatives)

sudo apt-get install dh-autoreconf libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev

# 为了添加文档的多种格式(doc、html、info),需要以下附加的依赖:
sudo apt-get install asciidoc xmlto docbook2x

sudo apt-get install install-info

以上两个发行版都需要执行下面的命令
下载、编译、安装

# 下载
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.39.3.tar.gz

# 解压
tar -zxvf git-2.39.3.tar.gz

# 移动文件夹并修改名字
mv git-2.39.3 /usr/local/git

# 进入git文件夹
cd /usr/local/git/

# 制作配置
make configure

# 配置
./configure --prefix=/usr/local/git

# 制作文档格式
make all doc info

# 安装
make install install-doc install-html install-info

3 yum软件包管理器来安装,这个一般是CnetOS Stream 8以前的版本才这样安装

这个镜像也是用的CentOS Linux7

3.0 卸载git

如果之前安装过git,必须删干净,不然即便是安装了新版也会显示旧版的git

# 查看git在哪里有
[root@localhost bin]# whereis git
git: /usr/local/git /usr/share/man/man1/git.1.gz

# 进入某个目录
[root@localhost bin]# cd /usr/local/

# 删除git开头的文件
[root@localhost local]# rm -rf git*

# 再次查看没有了
[root@localhost local]# whereis git
git: /usr/share/man/man1/git.1.gz

在这里插入图片描述

3.1 安装依赖包,等一分钟左右,会下载很多包,最后出现完成或则complete

# 安装依赖包
yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-devel autoconf automake texinfo libtool

在这里插入图片描述

在这里插入图片描述
这里应要注意,安装依赖包的时候会自动安装一个旧版的git,也就是1.8的,我们需要手动删除,不然新版即便是安装好,查看版本也是旧版的

# 查看版本
git --version

# 看git安装在哪里
whereis git

# 手动删除git
yum -y remove git

在这里插入图片描述

3.2 下载、解压

这里我们下载一个2.39.2的,方便查看是否安装成功

# 下载git压缩包
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.39.2.tar.gz

# 解压
tar -zxvf git-2.39.2.tar.gz

在这里插入图片描述

3.3 移动文件夹并改名字、配置

# 移动文件夹并修改名字
mv git-2.39.2 /usr/local/git

# 进入git文件夹
cd /usr/local/git/

# 制作配置(预编译)
make configure

# 配置(编译),又是一大堆输出
./configure --prefix=/usr/local/git

在这里插入图片描述
结尾应该是这样的
在这里插入图片描述

3.4 安装,又是一大堆输出

# 安装
make install

安装完会有一个done的输出,这一步我等了5分钟
在这里插入图片描述

这个时候查看版本是没有的

3.5 配置全局变量

  • 打开配置文件
    vim /etc/profile

  • i变成输入模式,输入下面两行git全局变量。按esc键退出编辑,按:wq保存并退出

# git全局变量 
export GIT_HOME=/usr/local/git
export PATH=$PATH:$GIT_HOME/bin
  • 刷新配置
    source /etc/profile

  • 查看版本,2.39.2没有问题
    git --version

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

四 windows安装请移步

请点击这里,查看windows安装git

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

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

相关文章

POLARDB IMCI 白皮书 云原生HTAP 数据库系统 一 与其他的商业数据库在HTAP的异同点(译)...

开头还是介绍一下群,如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,在新加的朋友会分到2群(共…

​关于 O2OA (翱途) 软件商用许可证授权形式的调整​

尊敬的小伙伴们: 非常感谢您对 O2OA 开发平台的关注与支持! 兰德网络 O2OA 平台软件商用许证授权形式正式由 “按年授权” 改为 “按版本买断” 的永久许可形式。 这意味着,合作伙伴在持有特定版本的软件商用许可后,将能够永久…

《Python精选300题》

专栏简介 Python 是一门功能强大的编程语言,已经成为了数据科学、机器学习、Web 开发等领域的首选语言之一。因此,掌握 Python 的相关知识点对于学习和使用这门语言至关重要。 本专栏中,精选了 300 道题目,囊括了 Python 入门阶段…

什么是链表?

链表 什么是链表? 链表是有序的数据结构,链表中的每个部分称为节点。可以首、尾、中间进行数据存取,链表的元素在内存中不必是连续的空间,每个节点通过 next 指针指向下一个节点。 优点 链表的添加和删除不会导致其余元素位移。…

java中synchronized和ReentrantLock的加锁和解锁能在不同线程吗?如果能,如何实现?

java中synchronized和ReentrantLock的加锁和解锁能在不同线程吗?如果能,如何实现? 答案2023-06-21: java的: 这个问题,我问了一些人,部分人是回答得有问题的。synchronized这是个关键字&…

23---WPF数据库ORM框架

一、仓库--存放货物---数据库--存放数据--关系型数据/非关系型数据库 1.关系型数据:保存数据保存关系--SqlServer,MySql,Oracle 2.非关系型数据:保存数据---Redis,Mongo,Memecahe 二、关系型数据和非关系型数据的区别: 1.关系…

高效底座模型LLaMA

论文标题:LLaMA: Open and Efficient Foundation Language Models 论文链接:https://arxiv.org/abs/2302.13971 论文来源:Meta AI 一、概述 大型语言模型(Large Languages Models,LLMs)通过大规模文本数据的…

Selenium 环境配置

如果你做过 Web 测试的工作,那么你应该明白 Web 测试中最重要的一部分工作就是自动化测试。自动化测试,顾名思义就是让浏览器自动运行,而无需手动操作。这和我们爬虫工作原理有些相似,我们爬虫也需要让浏览器运行网址来获取我们需…

HTTPS加密

目录 HTTPS加密1.加密和解密2.对称加密3.非对称加密4.中间人攻击5.证书 HTTPS加密 1.加密和解密 1.明文: 要传递的原始信息。 2.密文: 经过加密后的信息。 3.加密就是指将明文(要传输的信息)按照指定的方式进行变换,生成密文。 4.解密…

Pytest+selenium+allure+Jenkins自动化测试框架搭建及使用

一、 环境搭建 1. Python下载及安装 Python可应用于多平台包括windows, Linux 和 Mac OS X, 本文主要介绍windows环境下。你可以通过终端窗口输入 "python" 命令来查看本地是否已经安装Python以及Python的安装版本。 如未安装python, 推荐下载python 3.8.3以…

Android——事务处理(续)(十三)

1. 长按事件 1.1 知识点 &#xff08;1&#xff09;掌握长按事件的操作形式&#xff1b; &#xff08;2&#xff09;可以设置手机的桌面背景&#xff1b; 1.2 具体内容 范例&#xff1a;长按一张图片之后&#xff0c;此图片设置为手机桌面背景。 <LinearLayout xmlns:a…

LocalDateTime 和 LocalDate 与 date 有什么区别;LocalDateTime 示例,LocalDate 示例

目录 1 LocalDateTime 和 LocalDate 与 date 有什么区别2 LocalDateTime 示例&#xff1a;2 LocalDate 示例&#xff1a; 1 LocalDateTime 和 LocalDate 与 date 有什么区别 LocalDateTime、LocalDate和Date是 Java中不同的类库中用于表示日期和时间的类&#xff0c; 它们在功…

「Java核心技术大会 2023」6月重磅启动,邀你共同探讨Java生态

前言 &#x1f4d5;作者简介&#xff1a;热爱跑步的恒川&#xff0c;致力于C/C、Java、Python等多编程语言&#xff0c;热爱跑步&#xff0c;喜爱音乐的一位博主。 &#x1f4d7;本文收录于恒川的日常汇报系列&#xff0c;大家有兴趣的可以看一看 &#x1f4d8;相关专栏C语言初…

《机器学习公式推导与代码实现》chapter13-LightGBM

《机器学习公式推导与代码实现》学习笔记&#xff0c;记录一下自己的学习过程&#xff0c;详细的内容请大家购买作者的书籍查阅。 LightGBM 就GBDT系列算法的性能而言&#xff0c;XGBoost已经非常高效了&#xff0c;但并非没有缺陷。LightGBM就是一种针对XGBoost缺陷的改进版…

【C++11】 列表初始化 auto 范围for 新增关键字 新增容器

文章目录 1 列表初始化2 auto && 范围for3 新增关键字3.1 decltype3.2 default3.3 delete3.4 final与override 4 总结 1 列表初始化 由c语言的规则我们知道&#xff1a;一般只有数组才会支持用{}初始化&#xff0c;但是C11新语法规定我们不仅可以用{}初始化各种对象(内…

企业微信 创建应用后如何构造网页授权 获取token 获取用户信息

第一次对接企业微信&#xff0c;上网找了各种方案。 目的是在企业微信中&#xff0c;公司发给员工一个地址&#xff0c;员工点开后打开画面&#xff0c;在这个画面上可以获取到这个员工的userid&#xff08;后续功能操作就是各自不同的功能了哈&#xff0c;就不详细说了&#…

STM32F4_触摸屏

目录 1. 触摸屏原理 2. 电阻式触摸屏检测原理 3. 电容式触摸屏检测原理 4. 硬件配置 4.1 XPT2046驱动芯片 4.2 硬件设计 5. 代码详解 5.1 main.c 5.2 AT24C02.c 5.3 AT24C02.h 5.4 C_Touch_I2C.c 5.5 C_Touch_I2C.h 5.6 Touch.c 5.7 Touch.h 5.8 FT5206.c 5.9 …

ADAudit Plus:保护企业内部IT安全的强大解决方案

随着企业数字化的推进&#xff0c;IT系统和数据安全变得比以往任何时候都更加重要。为了保护企业的机密信息和敏感数据&#xff0c;企业需要一种可靠的IT安全解决方案。在众多选项中&#xff0c;ADAudit Plus是一款备受赞誉的软件&#xff0c;为企业内部的IT安全提供了强大的支…

Python入门自学进阶-Web框架——36、Web微信类实现初步

打开页面&#xff0c;会出现一个二维码&#xff0c;要使用手机微信扫一扫&#xff0c;才能登录。它的实现原理是什么&#xff1f; 下图为打开网页版微信登录的调试工具网络信息&#xff0c;定时发送请求&#xff0c;状态待处理&#xff08;pending&#xff09; 上图的挂起是pe…

网络安全|渗透测试入门案例分析,从零基础入门到精通—登录框页面的快速渗透常用检测手段

目录 引言 1、弱口令 2、万能密码绕过 ​编辑 3、登录认证绕过 3.1.令牌刷新端的错误配置 3.2. 错误的sso配置 3.3.CMS个例的访问问题 3.4.JWT Token的错误解析 3.5.暴力修改Authentication 4、图形验证码不失效 5、短信验证码不失效 6、短信攻击 7、反射型跨站脚…