游乐游手机版
首页/系统平台/文章详情

在CentOS 7系统下使用yum安装Git服务器的详细步骤指南

时间:2026-06-24 22:29
在 Linux 上安装 Git,最直截了当的方式当然是 yum 一把梭。但如果你需要比较新的版本——比如需要支持某些新协议或者新功能——那就得自己动手编译了。下面把整个过程拆开来讲,从卸载旧版本到配置环境变量,再到可能遇到的坑,都会提到。 先用 yum 装上看看版本: yum install git
在 Linux 上安装 Git,最直截了当的方式当然是 yum 一把梭。但如果你需要比较新的版本——比如需要支持某些新协议或者新功能——那就得自己动手编译了。下面把整个过程拆开来讲,从卸载旧版本到配置环境变量,再到可能遇到的坑,都会提到。 先用 yum 装上看看版本:
yum install git
检查一下:
git --version
如果发现版本不是你想要的,那就先把它卸掉:
yum remove git
接下来,编译 Git 需要一些开发工具和依赖包,少一个后面都会报错。先把它们装上:
yum -y groupinstall Development Tools
yum -y install zlib-devel perl-ExtUtils-MakeMaker asciidoc xmlto openssl-devel
然后去下载 Git 的源代码。到 [Git 的 releases 页面](https://github.com/git/git/releases) 挑一个稳定版(别下载带 `-rc` 的,那是候选版)。目前我们拿 2.32.0 举例:
wget https://www.kernel.org/pub/software/scm/git/git-2.32.0.tar.gz
或者直接从 GitHub 下载:
wget https://github.com/git/git/archive/refs/tags/v2.32.0.tar.gz
解压缩:
tar -zxvf git-2.32.0.tar.gz
cd git-2.32.0
配置安装路径(建议装到 `/usr/local/git`,方便管理):
./configure --prefix=/usr/local/git
编译并安装:
make && make install
安装完成后,得让系统找到新版的 `git` 命令。最简单的办法是改环境变量:
export PATH="/usr/local/git/bin:$PATH"
source /etc/profile
也可以单独创建一个环境变量文件,避免污染全局配置:
echo "export PATH=$PATH:/usr/local/git/bin" > /etc/profile.d/git.sh
source /etc/profile.d/git.sh
之后检查版本,确认是否装好:
git --version
--- **实际使用中可能遇到的一个坑**:当你用 `https` 协议操作远程仓库时,可能会报错 `Unable to find remote helper for 'https'`。这是因为 `git-core` 下的辅助工具没有被加到 PATH 里。解决办法:在使用 Git 之前设置一下 PATH,或者直接写到 `/etc/profile` 里:
PATH=$PATH:/usr/libexec/git-core
---

下面是补充

如果你打算用 SSH 协议搭建 Git 服务器,需要提前做几件事: - 在服务器和客户端分别安装 Git - 服务器上启用了 SSH 服务 - 客户端有 SSH 客户端 另外,如果之前编译过程中间出了问题,想要重新编译,可以用 `make clean` 清除;如果不想自己编译了,直接用 `yum remove git` 卸载即可。 --- 安装服务端: 先把系统更新一下:
sudo yum update
安装必需的依赖:
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
下载源码并解压:
wget https://github.com/git/git/archive/v2.32.0.tar.gz
tar zxvf v2.32.0.tar.gz
cd git-2.32.0
编译(这里用 `all` 目标,先编译全部):
make prefix=/usr/local/git all
如果编译过程中遇到 `libiconv` 相关错误(比如 `undefined reference to libiconv`),那是系统缺少 `libiconv` 库。需要先安装它:
cd /usr/local
wget https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar -zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv && make && make install
然后创建软链接:
ln -s /usr/local/lib/libiconv.so /usr/lib
ln -s /usr/local/lib/libiconv.so.2 /usr/lib
之后再回到 Git 源码目录重新编译和安装:
make prefix=/usr/local/git all
make prefix=/usr/local/git install
这时候如果你用 `git --version` 检查,可能会发现版本还是老的(比如 1.8.1)。这是因为系统仍然优先使用 `/usr/bin` 下面的旧版。可以用 `whereis git` 查看:
$ whereis git
git: /usr/bin/git /usr/local/git /usr/share/man/man1/git.1.gz
所以需要手动把新版的路径加到环境变量里,让它覆盖旧版。编辑 `/etc/profile`(或者 `/etc/bashrc`):
sudo vim /etc/profile
在文件末尾添加:
export PATH=/usr/local/git/bin:$PATH
保存退出后,再次查看版本,应该就是新的了。 --- 安装 gitosis gitosis 是一个轻量级的 Git 仓库管理工具,基于 Python。安装它需要先装 `setuptools`:
wget https://pypi.python.org/packages/source/s/setuptools/setuptools-19.0.tar.gz
tar zxvf setuptools-19.0.tar.gz
cd setuptools-19.0
python setup.py install
然后克隆 gitosis 源码:
cd /usr/local
git clone git://github.com/res0nat0r/gitosis.git
cd gitosis
python setup.py install
看到 `Finished processing dependencies for gitosis==0.2` 就说明装好了。 --- 在 Linux 服务器上搭建 Git 仓库 **第一步:创建专用的 Git 账户**(如果已经有账户可跳过):
sudo groupadd git
sudo useradd git -m -s /sbin/nologin -d /home/git -g git
如果希望这个账号能登录 shell,可以把 `/sbin/nologin` 改成 `/bin/bash`。 **第二步:新建一个空的 Git 仓库**。 切换到 git 账号(或者用 root):
cd /home/git
mkdir www.laogao.com
cd www.laogao.com
git init --bare
看到 `Initialized empty Git repository in /home/git/www.laogao.com.git/` 就成功了。 **第三步:添加用户的公钥**。 切换到 git 账户:
su git
mkdir /home/git/.ssh
chmod 700 .ssh
cd /home/git/.ssh
ssh-keygen -t rsa # 生成密钥,默认生成 ~/.ssh/id_rsa.pub
gitosis-init < /home/git/.ssh/id_rsa.pub # 初始化
初始化后,`.ssh` 目录下会出现三个文件:`authorized_keys`、`id_rsa`、`id_rsa.pub`。 最后,设置权限:
chmod 600 authorized_keys
然后编辑 `authorized_keys`:
vim authorized_keys
把你客户端生成的公钥粘贴进去,保存退出。这样就完成了。
来源:https://www.jb51.net/os/RedHat/783825.html
上一篇一行命令激活Windows 10/11系统指南 下一篇RHEL/CentOS 7 最小化安装后图形化桌面搭建教程
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
微软详解Win11时间点还原 默认每24小时创建恢复点
系统平台 · 2026-06-30

微软详解Win11时间点还原 默认每24小时创建恢复点

微软今日推送了最新的 6 月可选更新,并发布博客详细解读了 Win11 全新的“时间点还原”(Point-in-time restore)功能——这一功能本质上是对系统恢复体验的一次全面升级,旨在让用户更轻松地应对电脑故障。 微软表示,面向 Windows 11 客户端用户的“时间点还原”功能现已正

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验
系统平台 · 2026-06-30

Win11 26H1六月可选更新KB5095091 优化放大镜改善装机体验

微软今天推送了Windows 11 26H1设备的6月可选更新KB5095091,安装完成后系统版本号会升级到Build 28000 2340。值得一提的是,这次更新并非面向所有设备,而是专门为搭载高通骁龙X2系列芯片的机型准备的——包括骁龙X2 Plus、X2 Elite和X2 Elite Ext

Win11六月可选更新KB5095093修复回收站弹窗异常
系统平台 · 2026-06-30

Win11六月可选更新KB5095093修复回收站弹窗异常

微软已悄然推送Windows 11六月可选更新,编号KB5095093。本次更新覆盖两个版本:24H2用户安装后版本号升级至Build 26100 8737,而25H2用户则更新至Build 26200 8737。 本次更新并非仅是小修小补,而是带来了多项实质性新功能。下面我们就来详细解析这些更新内

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞
系统平台 · 2026-06-30

苹果macOS 27 Beta2封堵Siri AI跳过候补名单漏洞

科技媒体 Cult of Mac 昨日(6月23日)发布博文指出,苹果在 macOS 27 Beta 2 更新中悄然封堵了一个此前可用的后门——用户曾能通过一条终端命令绕过候补名单,直接启用新版 Siri AI,如今这一方法已失效。 简要回顾一下:在 macOS 27 Beta 1 阶段,只需在 M

微软加速Win11 25H2推送 覆盖所有符合条件家用PC
系统平台 · 2026-06-30

微软加速Win11 25H2推送 覆盖所有符合条件家用PC

近日(6月23日),科技媒体 Windows Latest 发布了一则值得关注的动态:微软已进一步扩大 Windows 11 25H2 的推送范围,所有满足硬件要求、且不受 IT 部门管理的家庭版和专业版设备,现在均可顺利接收本次更新。 此次升级有一个显著特点——采用“启用包”(eKB)方式进行推送