yum 安装
yum install git
// 查看版本
git --version
但是通过 yum 安装的 git
版本为 1.8.3
版本太老,以下为升级操作
升级之前先要卸载之前的老版本Git,命令 yum remove git
1、查看 git 的版本发版界面:Releases · git/git · GitHub;发现最新版本为2.2.0
2、进入/usr/src目录,通过wget执行下载包的操作,我习惯在/usr/src下使用wget下载,只是个人习惯
cd /usr/src
wget https://github.com/git/git/archive/v2.22.0.tar.gz
3、解压压缩包:tar -zxvf v2.22.0.tar.gz
4、安装编译码所需依赖,出现提示输入 Y 剩下只需等待即可
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
5、进入解压的文件夹,执行安装命令
cd git-2.22.0
# 执行编译,命令为
make prefix=/usr/local/git all
# 执行安装,命令为,安装到/usr/local/git
make prefix=/usr/local/git install
### 建议使用下面这组命令,上面的命令有可能会报错
# 执行编译,命令为
make CFLAGS=-liconv prefix=/usr/local/git all
# 执行安装,命令为,安装到/usr/local/git
make CFLAGS=-liconv prefix=/usr/local/git install
如果执行的是 make prefix=/usr/local/git all
,有可能出现以下错误
/usr/src/git-2.22.0/utf8.c:492:对‘libiconv’未定义的引用
libgit.a(utf8.o):在函数‘reencode_string_len’中:
/usr/src/git-2.22.0/utf8.c:587:对‘libiconv_open’未定义的引用
/usr/src/git-2.22.0/utf8.c:597:对‘libiconv_close’未定义的引用
/usr/src/git-2.22.0/utf8.c:592:对‘libiconv_open’未定义的引用
collect2: 错误:ld 返回 1
make: *** [git-credential-store] 错误 1
6、以上正确安装后,查看 Git 版本 git --version
会报 -bash: git: 未找到命令
错误,原因是我们把git安装到了 /usr/local/git
目录下,git --version默认找的是 /usr/bin/git命令,刚才我们已经卸载了,可通过软连来操作
# 先删除 /usr/bin/git
rm -rf /usr/bin/git
# 创建
ln -s /usr/local/git/bin/git /usr/bin/git
同时更新一下nss yum update -y nss curl libcurl
参考网址:
环境部署(三):Linux下安装Git - 老_张 - 博客园