CentOS系統安裝Git全攻略

文章目錄

    • ? 方法一:使用 `yum` 或 `dnf` 包管理器安裝(推薦)
      • 1. 更新系統軟件包(非必須)[^1]
      • 2. 安裝 Git
      • 3. 驗證安裝
    • ? 方法二:從源碼編譯安裝(適用于需要自定義版本或配置)
      • 1. 安裝依賴包
      • 2. 下載 Git 源碼
      • 3. 編譯并安裝
      • 4. 驗證安裝
    • ? 方法三:使用 Snap 安裝(適用于 CentOS 8 及以上)
    • ? 配置 Git 用戶信息
    • 🚨 常見問題及解決方法
    • ? 總結
    • 🔁 驗證安裝后的 Git 功能

在 CentOS 系統中安裝 Git 工具的完整步驟如下,涵蓋 使用包管理器安裝源碼編譯安裝驗證安裝配置 Git 用戶信息 等關鍵環節。


? 方法一:使用 yumdnf 包管理器安裝(推薦)

1. 更新系統軟件包(非必須)1

# 使用 yum(適用于 CentOS 7 及更早版本)
sudo yum update -y# 或使用 dnf(適用于 CentOS 8 及以上版本)
sudo dnf update -y

2. 安裝 Git

# 使用 yum
sudo yum install git -y# 或使用 dnf
sudo dnf install git -y

3. 驗證安裝

git --version

預期輸出:

git version 2.x.x

? 方法二:從源碼編譯安裝(適用于需要自定義版本或配置)

1. 安裝依賴包

sudo yum groupinstall "Development Tools" -y
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker -y

2. 下載 Git 源碼

# 訪問 Git 官方網站獲取最新版本:https://git-scm.com/
# 示例:安裝 Git 2.40.0
wget https://github.com/git/git/archive/v2.40.0.tar.gz
tar -xzf v2.40.0.tar.gz
cd git-2.40.0

3. 編譯并安裝

make prefix=/usr/local all
sudo make prefix=/usr/local install

4. 驗證安裝

/usr/local/bin/git --version

? 方法三:使用 Snap 安裝(適用于 CentOS 8 及以上)

# 安裝 snapd
sudo dnf install snapd -y
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap# 安裝 Git
sudo snap install git --classic# 驗證安裝
git --version

? 配置 Git 用戶信息

安裝完成后,建議配置 Git 的全局用戶名和郵箱:

# 設置用戶名
git config --global user.name "Your Name"# 設置郵箱
git config --global user.email "your_email@example.com"# 查看配置
git config --list

🚨 常見問題及解決方法

問題解決方案
安裝失敗確保系統已更新:sudo yum update -y
版本過舊使用源碼編譯安裝最新版本
下載速度慢使用國內鏡像加速(如阿里云):wget https://mirrors.aliyun.com/apache/maven/maven-3/...
找不到 git 命令檢查環境變量 PATH 是否包含 /usr/local/bin(源碼安裝時需手動添加)

? 總結

方法適用場景優點缺點
yum/dnf 安裝快速安裝默認版本簡單快捷版本可能較舊
源碼編譯安裝需要自定義版本或配置完全控制步驟復雜
Snap 安裝CentOS 8 及以上用戶簡單快捷依賴 snapd

🔁 驗證安裝后的 Git 功能

  1. 初始化倉庫

    mkdir my-git-project
    cd my-git-project
    git init
    
  2. 添加文件并提交

    echo "Hello, Git!" > README.md
    git add README.md
    git commit -m "Initial commit"
    
  3. 查看狀態

    git status
    

通過以上步驟,您已成功在 CentOS 系統中安裝并配置了 Git 工具。如果需要進一步優化(如配置私有倉庫或代理),請參考 Git 官方文檔。


  1. 我的系統是最新的CentOS Stream 10,無須再次更新 ??

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/94147.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/94147.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/94147.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VR交通安全學習機-VR交通普法體驗館方案

VR交通安全學習機是一種基于虛擬現實技術的互動式教育設備,旨在通過虛擬環境模擬真實的交通場景,幫助用戶深入了解交通規則、交通信號、道路安全等知識,并通過沉浸式的體驗讓他們親身感受到不遵守交通規則的后果。無論是駕駛員、行人還是騎行…

算法題(188):團伙

審題: 本題需要我們通過解析所有人之間的關系,從而判斷出朋友團體的總個數并輸出 思路: 方法一:擴展域并查集 由于這里涉及對朋友/敵人等關系集合的頻繁操作,所以我們需要使用并查集來操作,但是普通的并查集…

C++開發/Qt開發:單例模式介紹與應用

單例模式是軟件設計模式中最簡單也是最常用的一種創建型設計模式。它的核心目標是確保一個類在整個應用程序生命周期中只有一個實例,并提供一個全局訪問點。筆者白話版理解:你創建了一個類,如果你希望這個類對象在工程中應用時只創建一次&…

Linux筆記---策略模式與日志

1. 設計模式設計模式是軟件開發中反復出現的問題的通用解決方案,它是一套套被反復使用、多數人知曉、經過分類編目的代碼設計經驗總結。設計模式并非具體的代碼實現,而是針對特定問題的抽象設計思路和方法論。它描述了在特定場景下,如何組織類…

關于多個el-input的自動聚焦,每輸入完一個el-input,自動聚焦到下一個

講解原理或者思路:如果你有多個el-input,想要實現每輸入完一個輸入框,然后自動聚焦到下一個輸入框,同理,如果每刪除一個輸入框的值,自動聚焦到上一個輸入框。條件那么首先要做的就是,設置條件,在…

AI 賦能教育變革:機遇、實踐與展望

引言說明教育在社會發展中的重要地位,以及傳統教育面臨的困境。引出 AI 技術為教育變革帶來新機遇,闡述研究其在教育中應用的價值。AI 為教育帶來的機遇個性化學習支持:講解 AI 通過分析學生學習數據,如答題情況、學習時間等&…

(一)八股(數據庫/MQ/緩存)

文章目錄 項目地址 一、數據庫 1.1 事務隔離級別 1. 事務的四大特性 2. Read Uncommited臟讀(未提交讀) 3. Read Commited幻讀(sql默認已提交讀) 4. Repeatable Read 5. Serializable 6. Snapshot(快照隔離) 7. 代碼開啟 8. For update和Repeatable Read的區別 1.2 各種鎖 …

STM32H750 CoreMark跑分測試

STM32H750 CoreMark跑分測試🔎CoreMark跑分測試查詢網站:https://www.eembc.org/coremark/scores.php📜 CoreMark源碼:https://www.github.com/eembc/coremarkCoreMark移植和配置參考:https://community.st.com/t5/stm…

RabbitMQ如何確保消息發送和消息接收

消息發送確認 1 ConfirmCallback方法 ConfirmCallback 是一個回調接口,消息發送到 Broker 后觸發回調,確認消息是否到達 Broker 服務器,也就是只 確認是否正確到達 Exchange 中。 2 ReturnCallback方法 通過實現 ReturnCallback 接口&#xf…

Linux:進程間通信-管道

Linux:進程間通信-管道 前言:為什么需要進程間通信? 你有沒有想過,當你在電腦上同時打開瀏覽器、音樂播放器和文檔時,這些程序是如何協同工作的?比如,瀏覽器下載的文件,為什么能被文…

Jmeter + FFmpeg 直播壓測遇到的問題及解決方案

1、壓測機安裝FFmpeg,下載安裝步驟可見:https://zhuanlan.zhihu.com/p/692019886 2、Jmeter與FFmpeg位數要一致,不允許在32位的進程中運行一個64位的程序,反之亦然 3、OS進程取樣器(Thread Group -> Add -> Sa…

安卓app、微信小程序等訪問多個api時等待提示調用與關閉問題

安卓app、微信小程序訪問webapi,將需要一時間,我們稱之為耗時操作,其它諸如密集型計算、訪問文件與設備等亦是如此。在這個期間我們應該跳出提示,告知用戶正在等待,并且很多時候,在等待時不允許用戶再對UI進…

一個狀態機如何啟動/停止另一個狀態機

一個狀態機如何啟動/停止另一個狀態機 這個過程主要依賴于動作列表(Action List) 中的特定動作項和狀態管理服務(ARA::SM)提供的API。 1. 通過動作列表(Action List)進行預配置控制 這是最常見的方式&#…

基于IPO智能粒子優化的IIR濾波器參數識別算法matlab仿真

目錄 1.程序功能描述 2.測試軟件版本以及運行結果展示 3.部分程序 4.算法理論概述 5.完整程序 1.程序功能描述 IIR(Infinite Impulse Response)濾波器即無限沖激響應濾波器,其輸出不僅與當前和過去的輸入有關,還與過去的輸出…

歐州服務器String 轉 double 有BUG?

string 轉 double 的常見問題通常與文化差異、格式解析或特殊值處理相關,而非框架本身的 “BUG”。以下是可能導致轉換異常的常見場景及解決方案: 文化差異導致的解析問題 現象:同樣的字符串(如 “1.23” 或 “1,23”)…

鴻蒙中網絡診斷:Network分析

上面的圖很熟悉吧 Network 面板的表格列出了所有請求,每一列都提供了關鍵信息: Name: 請求的資源名稱和路徑。 Status: HTTP 狀態碼(診斷核心)。200成功,304未修改(緩存),404找不到…

HarmonyOS 實戰:6 種實現實時數據更新的方案全解析(含完整 Demo)

摘要 在當下的應用開發中,用戶體驗越來越依賴“實時性”。消息要第一時間送達、訂單狀態要立刻刷新、數據變化不能延遲……這些需求推動了“實時數據更新”成為應用的必備功能。在鴻蒙系統(HarmonyOS)中,我們既可以用系統內置的數…

第十六屆藍橋杯青少組C++省賽[2025.8.10]第二部分編程題(4、矩陣圈層交錯旋轉)

參考程序&#xff1a;#include <bits/stdc.h> using namespace std;const int MAXN 105; int a[MAXN][MAXN];int main() {int n;if (!(cin >> n)) return 0;for (int i 0; i < n; i)for (int j 0; j < n; j)cin >> a[i][j];int layers n / 2; // 每…

AI供應鏈情報預警 | 惡意Py包偽裝AI框架庫開展數據竊密及應用劫持攻擊

AI供應鏈情報概述近日&#xff08;18th Aug. , 2025&#xff09;&#xff0c;懸鏡安全情報中心在Python官方倉庫中捕獲1起偽裝成知名AI框架庫pytensor&#xff08;https://pypi.org/project/pytensor&#xff09;的組件投毒事件。在北京時間8月18日凌晨&#xff0c;投毒者連續發…

AI需要防火墻,云計算需要重新構想

Akamai創始人Tom Leighton欲終結云膨脹&#xff0c;從內到外守護AI安全 Akamai創始人Tom Leighton 當前超大規模云服務商主導著企業IT市場&#xff0c;鮮有人敢挑戰云計算經濟模式、AI基礎設施和網絡安全架構的現狀。但Akamai聯合創始人兼CEO Tom Leighton正是這樣的挑戰者。他…