centos 7 升級 git 版本(通過安裝 ius 源的方式)
文章目錄
檢視系統相關資訊
檢視CentOS的版本號
[[email protected] ~]# cat /etc/centos-release CentOS Linux release 7.4.1708 (Core)
檢視核心版本
[[email protected] ~]# uname -r
3.10.0-693.el7.x86_64
檢視 git 版本
[[email protected] haskell]# git version
git version 1.8.3.1
可以看到,我的 CentOS 7 中自帶的是 1.8.3.1 版本的git,我想升級到最新版本,於是我進入了git官網,去找我該怎麼升級我的git版本。
進入相關下載頁面(https://git-scm.com/download/linux) 可以看到以下資訊:
我們可以看到,我們使用的 Red Hat 有兩種升級我們 git 版本的方式,分別是:
- 原始碼編譯安裝的方式
- 用第三方 yum 源,來更新我們的 git 版本
通過安裝第三方 yum 源的方式來更新git
下載對應的 yum 源
我們點選進入 the IUS Community Project 網站,首頁是這樣的:
可以看到,這個頁面很友好,很乾淨。簡單的介紹了一下專案用途,專案哲學,介紹了以下怎麼使用。
然後我們可以點選下圖中的這個連結,進入對應的頁面:
這裡為了方便直接,我直接在這裡放出頁面地址:https://ius.io/GettingStarted/
點進去以後,找到下面這一段:
用我四級的水平稍微理解了一下,可以明白,我麼們用的 CentOS 系統,可以跳過安裝 epel-release ,直接進入第二步了。
然後我們就能回到我們的 Linux,通過 wget 下載對應版本的 rpm 源。
[[email protected] ~]# wget https://centos7.iuscommunity.org/ius-release.rpm
--2018-11-07 09:29:06-- https://centos7.iuscommunity.org/ius-release.rpm
正在解析主機 centos7.iuscommunity.org (centos7.iuscommunity.org)... 162.242.221.48, 2001:4802:7801:102:be76:4eff:fe21:14aa
正在連線 centos7.iuscommunity.org (centos7.iuscommunity.org)|162.242.221.48|:443... 已連線。
已發出 HTTP 請求,正在等待迴應... 301 Moved Permanently
位置:https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-15.ius.centos7.noarch.rpm [跟隨至新的 URL]
--2018-11-07 09:29:11-- https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-15.ius.centos7.noarch.rpm
正在解析主機 dl.iuscommunity.org (dl.iuscommunity.org)... 146.20.25.47, 2001:4802:7901:0:4ccc:ff11:0:a
正在連線 dl.iuscommunity.org (dl.iuscommunity.org)|146.20.25.47|:443... 已連線。
已發出 HTTP 請求,正在等待迴應... 200 OK
長度:8340 (8.1K) [application/x-redhat-package-manager]
正在儲存至: “ius-release.rpm”
100%[================================================================>] 8,340 --.-K/s 用時 0s
2018-11-07 09:29:15 (95.7 MB/s) - 已儲存 “ius-release.rpm” [8340/8340])
如果你還沒有安裝 wget,那麼這裡安利一下我之前寫過的一篇安裝 python3 的文章,https://blog.csdn.net/lovefengruoqing/article/details/79284573,裡面有安裝 wget 的教程,希望能幫到你。
安裝 yum 源
[[email protected] ~]# rpm -i ius-release.rpm
警告:ius-release.rpm: 頭V4 DSA/SHA1 Signature, 金鑰 ID 9cd4953f: NOKEY
刪除掉已經存在的 git
如果不刪除,直接安裝,會報錯:
[[email protected] ~]# yum install git2u
已載入外掛:fastestmirror, langpacks, replace
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* ius: hkg.mirror.rackspace.com
* updates: mirrors.aliyun.com
正在解決依賴關係
--> 正在檢查事務
---> 軟體包 git2u.x86_64.0.2.16.5-1.ius.centos7 將被 安裝
--> 正在處理依賴關係 git2u-core = 2.16.5-1.ius.centos7,它被軟體包 git2u-2.16.5-1.ius.centos7.x86_64 需要
--> 正在處理依賴關係 git2u-core-doc = 2.16.5-1.ius.centos7,它被軟體包 git2u-2.16.5-1.ius.centos7.x86_64 需要
--> 正在處理依賴關係 git2u-perl-Git = 2.16.5-1.ius.centos7,它被軟體包 git2u-2.16.5-1.ius.centos7.x86_64 需要
--> 正在檢查事務
---> 軟體包 git2u-core.x86_64.0.2.16.5-1.ius.centos7 將被 安裝
---> 軟體包 git2u-core-doc.noarch.0.2.16.5-1.ius.centos7 將被 安裝
---> 軟體包 git2u-perl-Git.noarch.0.2.16.5-1.ius.centos7 將被 安裝
--> 處理 git2u-core-2.16.5-1.ius.centos7.x86_64 與 git-core < 2.16.5 的衝突
--> 處理 git2u-perl-Git-2.16.5-1.ius.centos7.noarch 與 perl-Git < 2.16.5 的衝突
--> 處理 git2u-2.16.5-1.ius.centos7.x86_64 與 git < 2.16.5 的衝突
--> 解決依賴關係完成
錯誤:git2u-perl-Git conflicts with perl-Git-1.8.3.1-14.el7_5.noarch
錯誤:git2u conflicts with git-1.8.3.1-14.el7_5.x86_64
錯誤:git2u-core conflicts with git-1.8.3.1-14.el7_5.x86_64
您可以嘗試新增 --skip-broken 選項來解決該問題
您可以嘗試執行:rpm -Va --nofiles --nodigest
這裡需要注意的是,使用ius源安裝的軟體,一般都會在軟體名稱後面加上版本號
和u
,我們查詢一下就能知道:
[[email protected] ~]# yum info git*u --disablerepo=base,extras,updates --enablerepo=ius
已載入外掛:fastestmirror, langpacks, replace
Loading mirror speeds from cached hostfile
* epel: mirrors.aliyun.com
* ius: mirrors.tuna.tsinghua.edu.cn
已安裝的軟體包
名稱 :git2u
架構 :x86_64
版本 :2.16.5
釋出 :1.ius.centos7
大小 :2.3 M
源 :installed
來自源:ius
簡介 : Fast Version Control System
網址 :https://git-scm.com
協議 : GPLv2
描述 : Git is a fast, scalable, distributed revision control system with an
: unusually rich command set that provides both high-level operations
: and full access to internals.
:
: The git rpm installs common set of tools which are usually using with
: small amount of dependencies. To install all git packages, including
: tools for integrating with other SCMs, install the git-all meta-package.
通過查詢得知,在 ius 源中有 2.16.5 版本的 git,這已經比我們系統自帶的 1.8.3.1 版本的 git 好多了。
刪除掉原本的版本的 git:
yum remove git
安裝 ius 源中的 git
安裝命令為:
yum install git2u
安裝完成以後檢查一下版本:
[[email protected] ~]# git version
git version 2.16.5
恭喜你,你已經成功通過 ius 源,安裝了新版本的 git 了。
後記
至於通過原始碼編譯的方式安裝 git,我之前寫過一篇類似的文章,地址為:https://lovefengruoqing.github.io/blog/CentOS下git最新版本的安裝方法.html ,順便安利一下我用 hexo 搭建的個人部落格吧。