在CentOS 7上安装最新的Git(Git 2.x)

时间:2020-02-23 14:30:46  来源:igfitidea点击:

本指南用于在CentOS 7服务器上安装最新版本的Git。 CentOS 7储存库中可用的git版本有点旧,为1.x。如果我们需要更新版本的Git,请使用本指南进行安装。

Git是一个分布式版本控制系统,用于跟踪文件更改以协调团队成员之间在这些文件上的工作。 Git是当今世界上使用最广泛的版本控制系统。

首先检查CentOS 7服务器上git的安装版本。

$git --version
git version 1.8.3.1

从端点存储库在CentOS 7上安装最新版git

Endpoint是一个社区项目,为Enterprise Linux发行版的选定软件的较新版本提供RPM软件包。该项目的目的是为Red Hat Enterprise Linux(RHEL)和CentOS创建高质量的RPM软件包。

删除旧的git

sudo yum remove git*

添加端点CentOS 7存储库

在CentOS 7上安装最新版本的Git的最快方法是来自端点存储库。

sudo yum -y install https://packages.endpoint.com/rhel/7/os/x86_64/endpoint-repo-1.7-1.x86_64.rpm

添加存储库后,在CentOS 7上安装Git 2.x:

sudo yum install git

按y键以接受安装,然后在CentOS 7上安装git。

========================================================================================================================================================
 Package                                      Arch                         Version                                 Repository                      Size
========================================================================================================================================================
Installing:
 git                                          x86_64                       2.24.1-1.ep7                            endpoint                       139 k
Installing for dependencies:
 emacs-filesystem                             noarch                       1:24.3-23.el7                           base                            58 k
 git-core                                     x86_64                       2.24.1-1.ep7                            endpoint                       5.1 M
 git-core-doc                                 noarch                       2.24.1-1.ep7                            endpoint                       2.4 M
 libsecret                                    x86_64                       0.18.6-1.el7                            base                           153 k
 pcre2                                        x86_64                       10.23-2.el7                             base                           201 k
 perl                                         x86_64                       4:5.16.3-295.el7                        base                           8.0 M
 perl-Carp                                    noarch                       1.26-244.el7                            base                            19 k
 perl-Encode                                  x86_64                       2.51-7.el7                              base                           1.5 M
 perl-Error                                   noarch                       1:0.17020-2.el7                         base                            32 k
 perl-Exporter                                noarch                       5.68-3.el7                              base                            28 k
 perl-File-Path                               noarch                       2.09-2.el7                              base                            26 k
 perl-File-Temp                               noarch                       0.23.01-3.el7                           base                            56 k
 perl-Filter                                  x86_64                       1.49-3.el7                              base                            76 k
 perl-Getopt-Long                             noarch                       2.40-3.el7                              base                            56 k
 perl-Git                                     noarch                       2.24.1-1.ep7                            endpoint                        47 k
 perl-HTTP-Tiny                               noarch                       0.033-3.el7                             base                            38 k
 perl-PathTools                               x86_64                       3.40-5.el7                              base                            82 k
 perl-Pod-Escapes                             noarch                       1:1.04-295.el7                          base                            51 k
 perl-Pod-Perldoc                             noarch                       3.20-4.el7                              base                            87 k
 perl-Pod-Simple                              noarch                       1:3.28-4.el7                            base                           216 k
 perl-Pod-Usage                               noarch                       1.63-3.el7                              base                            27 k
 perl-Scalar-List-Utils                       x86_64                       1.27-248.el7                            base                            36 k
 perl-Socket                                  x86_64                       2.010-5.el7                             base                            49 k
 perl-Storable                                x86_64                       2.45-3.el7                              base                            77 k
 perl-TermReadKey                             x86_64                       2.30-20.el7                             base                            31 k
 perl-Text-ParseWords                         noarch                       3.29-4.el7                              base                            14 k
 perl-Time-HiRes                              x86_64                       4:1.9725-3.el7                          base                            45 k
 perl-Time-Local                              noarch                       1.2300-2.el7                            base                            24 k
 perl-constant                                noarch                       1.27-2.el7                              base                            19 k
 perl-libs                                    x86_64                       4:5.16.3-295.el7                        base                           689 k
 perl-macros                                  x86_64                       4:5.16.3-295.el7                        base                            44 k
 perl-parent                                  noarch                       1:0.225-244.el7                         base                            12 k
 perl-podlators                               noarch                       2.5.1-3.el7                             base                           112 k
 perl-threads                                 x86_64                       1.87-4.el7                              base                            49 k
 perl-threads-shared                          x86_64                       1.43-6.el7                              base                            39 k

Transaction Summary
========================================================================================================================================================
Install  1 Package (+35 Dependent packages)

Total download size: 20 M
Installed size: 78 M
Is this ok [y/d/N]:y

安装git2u-all软件包后检查git版本

$git --version
git version 2.24.1

经确认,当前版本的Git是2.16.5.

在CentOS 7上从源代码安装最新版Git(2.x)

在这种方法中,我们将负责从源代码构建git。安装所需的依赖包:

sudo yum -y install epel-release
sudo yum -y groupinstall "Development Tools"
sudo yum -y install wget perl-CPAN gettext-devel perl-devel  openssl-devel  zlib-devel curl-devel expat-devel  getopt asciidoc xmlto docbook2X
sudo ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi

下载并安装最新的git:

sudo yum -y install wget
export VER="2.27.0"
wget https://github.com/git/git/archive/v${VER}.tar.gz
tar -xvf v${VER}.tar.gz
rm -f v${VER}.tar.gz
cd git-*
make configure
sudo ./configure --prefix=/usr
sudo make
sudo make install

检查系统上安装的新版git

$git --version
git version 2.27.0