CentOS 下安装 Git 完整指南
前言
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 的特性
解决方案:
- 使用 IUS 或其他第三方仓库
- 使用源码编译安装
- 使用 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 的两种主要方法:
- yum/dnf 安装:简单快速,一条命令即可完成,适合大多数场景
- 源码编译安装:可获取最新版本,适合对版本有特定要求的场景
安装完成后,建议进行基础配置(用户名、邮箱),并根据需要配置 SSH 密钥以便与远程仓库交互。
无论选择哪种安装方式,Git 都是现代软件开发的必备工具,掌握其基本使用将大大提升开发效率。
参考资料
相关推荐
千问模型 Qwen-Image 系列
全面介绍阿里巴巴通义千问 Qwen-Image 图像生成模型系列,包括文生图、图像编辑、图层分解等功能,涵盖技术架构和各版本特性详解
iOS APP 备案流程完整指南
详细介绍中国大陆 iOS 应用备案的完整流程,包括备案前准备、材料清单、各大云平台操作指南、审核流程、常见问题解答以及 App Store 备案号提交方法
网站 ICP 备案流程完整指南
详细介绍中国大陆网站 ICP 备案的完整流程,包括备案类型区分、材料准备、各大云平台操作指南、审核流程、公安备案以及常见问题解决方案