CentOS 下安装 Git 完整指南

·11 分钟阅读·2053··作者:冬眠

前言

Git 是目前最流行的分布式版本控制系统,广泛用于软件开发项目的代码管理。无论是个人项目还是团队协作,Git 都是不可或缺的工具。

本文将详细介绍在 CentOS 系统下安装 Git 的多种方法,适用于 CentOS 7 和 CentOS 8(包括 Rocky Linux、AlmaLinux 等 RHEL 衍生版本)。

安装前准备

检查系统版本

# 查看系统版本
cat /etc/redhat-release

# 或者使用
cat /etc/os-release

检查是否已安装 Git

# 检查 Git 是否已安装
git --version

# 如果已安装,会显示版本号
# 例如:git version 2.39.0

卸载旧版本(如需要)

如果已安装旧版本的 Git,可以先卸载:

# 使用 yum 卸载
sudo yum remove git -y

# CentOS 8 使用 dnf
sudo dnf remove git -y

方法一:yum/dnf 安装

这是最简单快速的安装方式,适合大多数用户。

CentOS 7

# 安装 Git
sudo yum install git -y

# 验证安装
git --version

注意:CentOS 7 默认仓库中的 Git 版本较旧(通常是 1.8.x),如果需要新版本,请参考方法二或使用第三方仓库。

使用 IUS 仓库安装较新版本(CentOS 7)

# 安装 IUS 仓库
sudo yum install https://repo.ius.io/ius-release-el7.rpm -y

# 安装较新版本的 Git
sudo yum install git236 -y

# 验证版本
git --version

CentOS 8 / Rocky Linux / AlmaLinux

# 安装 Git
sudo dnf install git -y

# 验证安装
git --version

CentOS 8 及其衍生版本默认仓库中的 Git 版本相对较新。

yum 安装的优缺点

优点 缺点
安装简单,一条命令完成 版本可能较旧
自动处理依赖关系 无法自定义编译选项
便于系统统一管理和更新 受限于仓库可用版本

方法二:源码编译安装

如果需要最新版本的 Git 或需要自定义编译选项,可以选择源码编译安装。

安装编译依赖

# CentOS 7
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker -y

# CentOS 8
sudo dnf install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker -y

如果需要文档支持,还需安装:

sudo yum install asciidoc xmlto docbook2X -y

下载 Git 源码

访问 Git 官方 GitHub 发布页面获取最新版本:https://github.com/git/git/tags

# 创建临时目录
cd /tmp

# 下载源码(替换为最新版本号)
wget https://github.com/git/git/archive/refs/tags/v2.43.0.tar.gz

# 解压
tar -zxf v2.43.0.tar.gz

# 进入源码目录
cd git-2.43.0

服务器无法访问 GitHub 的解决方案

国内服务器经常无法直接访问 GitHub,可以使用以下替代方案:

方案一:使用官方 kernel.org 镜像(推荐)

Git 官方在 kernel.org 提供源码下载,国内访问通常较稳定:

cd /tmp

# 从 kernel.org 下载(替换为需要的版本号)
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.43.0.tar.gz

# 解压
tar -zxf git-2.43.0.tar.gz

# 进入目录
cd git-2.43.0

方案二:使用国内镜像加速

通过代理服务加速 GitHub 下载:

cd /tmp

# 使用 ghproxy 代理(第三方服务,可能不稳定)
wget https://ghproxy.com/https://github.com/git/git/archive/refs/tags/v2.43.0.tar.gz

# 或使用 gitclone 镜像
wget https://gitclone.com/github.com/git/git/archive/refs/tags/v2.43.0.tar.gz

方案三:本地下载后上传

在可以访问 GitHub 的电脑上下载,然后上传到服务器:

# 本地电脑下载
# 访问 https://github.com/git/git/tags 下载 tar.gz 文件

# 使用 scp 上传到服务器
scp git-2.43.0.tar.gz user@your-server:/tmp/

# 登录服务器后解压
ssh user@your-server
cd /tmp
tar -zxf git-2.43.0.tar.gz
cd git-2.43.0

方案四:使用 Gitee 镜像仓库

Gitee 提供 GitHub 仓库的镜像服务:

cd /tmp

# 从 Gitee 镜像克隆(需要先安装旧版 git)
git clone https://gitee.com/mirrors/git.git
cd git

# 切换到指定版本
git checkout v2.43.0

各方案对比

方案 优点 缺点
kernel.org 官方镜像,稳定可靠 更新可能稍有延迟
代理服务 简单快捷 第三方服务,稳定性不保证
本地上传 最可靠 需要额外操作
Gitee 镜像 国内访问快 需要先有 Git 才能克隆

编译安装

# 生成配置
make configure
./configure --prefix=/usr/local

# 编译
make all

# 安装(需要 root 权限)
sudo make install

配置环境变量

如果安装到 /usr/local,通常不需要额外配置。如果安装到其他目录,需要添加到 PATH:

# 编辑 ~/.bashrc 或 ~/.bash_profile
echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc

# 使配置生效
source ~/.bashrc

验证安装

# 查看版本
git --version

# 查看安装路径
which git

源码安装的优缺点

优点 缺点
可获取最新版本 安装步骤较多
可自定义编译选项 需要手动处理依赖
不依赖系统仓库 更新需要重新编译

安装后配置

配置用户信息

Git 要求配置用户名和邮箱,用于记录提交信息:

# 配置用户名
git config --global user.name "你的用户名"

# 配置邮箱
git config --global user.email "your-email@example.com"

查看配置

# 查看所有配置
git config --list

# 查看特定配置
git config user.name
git config user.email

常用配置选项

# 设置默认编辑器
git config --global core.editor vim

# 设置默认分支名称为 main
git config --global init.defaultBranch main

# 启用颜色输出
git config --global color.ui auto

# 设置别名
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit

配置 SSH 密钥(可选)

如果需要通过 SSH 协议访问远程仓库(如 GitHub、GitLab),需要配置 SSH 密钥:

# 生成 SSH 密钥对
ssh-keygen -t ed25519 -C "your-email@example.com"

# 如果系统不支持 ed25519,使用 RSA
ssh-keygen -t rsa -b 4096 -C "your-email@example.com"

# 查看公钥
cat ~/.ssh/id_ed25519.pub
# 或
cat ~/.ssh/id_rsa.pub

将公钥添加到 GitHub/GitLab 等平台的 SSH Keys 设置中。

测试 SSH 连接

# 测试 GitHub 连接
ssh -T git@github.com

# 测试 GitLab 连接
ssh -T git@gitlab.com

常见问题与解决

问题:Permission denied

现象:执行安装命令时提示权限不足

解决方案

# 使用 sudo 执行命令
sudo yum install git -y

# 或切换到 root 用户
su -
yum install git -y

问题:依赖包缺失

现象:源码编译时报错,提示缺少某些库

解决方案

# 安装开发工具组
sudo yum groupinstall "Development Tools" -y

# 安装常见依赖
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel -y

问题:yum 安装的版本太旧

现象:需要使用新版本 Git 的特性

解决方案

  1. 使用 IUS 或其他第三方仓库
  2. 使用源码编译安装
  3. 使用 Software Collections (SCL)
# 使用 SCL(CentOS 7)
sudo yum install centos-release-scl -y
sudo yum install rh-git227 -y
scl enable rh-git227 bash

问题:HTTPS 克隆失败

现象:克隆仓库时提示 SSL 证书错误

解决方案

# 更新 CA 证书
sudo yum update ca-certificates -y

# 临时禁用 SSL 验证(不推荐在生产环境使用)
git config --global http.sslVerify false

问题:中文文件名显示乱码

现象git status 显示中文文件名为八进制编码

解决方案

# 禁用对中文文件名的转义
git config --global core.quotepath false

版本对比与选择建议

场景 推荐方法 说明
快速开始 yum/dnf 安装 简单快速,适合新手
需要新特性 源码编译 获取最新版本
生产环境 yum/dnf 安装 稳定可靠,便于管理
开发环境 源码编译或 IUS 可使用最新功能

总结

本文介绍了在 CentOS 系统下安装 Git 的两种主要方法:

  1. yum/dnf 安装:简单快速,一条命令即可完成,适合大多数场景
  2. 源码编译安装:可获取最新版本,适合对版本有特定要求的场景

安装完成后,建议进行基础配置(用户名、邮箱),并根据需要配置 SSH 密钥以便与远程仓库交互。

无论选择哪种安装方式,Git 都是现代软件开发的必备工具,掌握其基本使用将大大提升开发效率。

参考资料

相关推荐

千问模型 Qwen-Image 系列

全面介绍阿里巴巴通义千问 Qwen-Image 图像生成模型系列,包括文生图、图像编辑、图层分解等功能,涵盖技术架构和各版本特性详解

·13 分钟·
#Qwen#通义千问

iOS APP 备案流程完整指南

详细介绍中国大陆 iOS 应用备案的完整流程,包括备案前准备、材料清单、各大云平台操作指南、审核流程、常见问题解答以及 App Store 备案号提交方法

·16 分钟·
#iOS#APP备案

网站 ICP 备案流程完整指南

详细介绍中国大陆网站 ICP 备案的完整流程,包括备案类型区分、材料准备、各大云平台操作指南、审核流程、公安备案以及常见问题解决方案

·18 分钟·
#ICP备案#网站备案