1

git 源码安装

重要:

yum install libcurl-devel

安装之前先安装这个,否则https 不能用

1. 下载源码
wget https://github.com/git/git/archive/refs/tags/v2.31.0.tar.gz
2. 解压
tar -zxvf v2.31.0.tar.gz
3.编译安装
cd v2.31.0
.configure -prefix=/usr/lcoal/

报错: 提示没有 .configure

解决: 安装 autoconf 生成

yum install autoconf
autoconf
.configure -prefix=/usr/local/

报错: no acceptable C compiler found in $PATH 没有 C 编译器

解决: 安装 C 编译器

yum install gcc
.configure -prefix=/usr/local/
make && make install

报错: fatal error: zlib.h: No such file or directory 没有 zlib.h

解决: 安装zlib-devel

yum install zlib-devel
make && make install

出现

 rm -f "$execdir/$p" && 
 if test -z ""; 
 then 
 test -n "" && 
 ln -s "$destdir_from_execdir_SQ/bin/git" "$execdir/$p" || 
 { test -z "" && 
 ln "$execdir/git" "$execdir/$p" 2>/dev/null || 
 ln -s "git" "$execdir/$p" 2>/dev/null || 
 cp "$execdir/git" "$execdir/$p" || exit; }; 
 fi 
done && 
remote_curl_aliases="" && 
for p in $remote_curl_aliases; do 
 rm -f "$execdir/$p" && 
 test -n "" && 
 ln -s "git-remote-http" "$execdir/$p" || 
 { test -z "" && 
 ln "$execdir/git-remote-http" "$execdir/$p" 2>/dev/null || 
 ln -s "git-remote-http" "$execdir/$p" 2>/dev/null || 
 cp "$execdir/git-remote-http" "$execdir/$p" || exit; } 
done && 
./check_bindir "z$bindir" "z$execdir" "$bindir/git-add"
​

大概这么一串,说明成功,cd 到安装路径

cd bin 
./git

现在说明安装成功,但是还不能在别处运行,我们添加环境变量

4.配置环境变量

永久配置环境变量有两种方法,一种是直接编辑 /etc/profile

vim /etc/profile

然后在最后追加

export PATH=$PATH:/usr/lcoal/soft/git/bin

直接编辑profile 文件是不好维护的,我采用了另外一种方法

cd /etc/profile.d
vim git.sh

我们在profile.d下新建一个脚本,profile配置文件中会读取这个文件夹下所有的sh,新建内容:

export GIT_HOME=/usr/local/soft/git
export PATH=$PATH:$GIT_HOME/bin

然后

source /etc/profile

生效,我们测试一次写入的环境变量

echo $GIT_HOME
/usr/local/soft/git

环境变量生效,现在测试git

git version
git version 2.31.0

git 安装成功,虽然yum install git 可以直接安装,但是版本太老,对centos 感兴趣的建议源码安装,从中遇到问题,解决问题,可以学到很多的.


akazwz
100 声望4 粉丝

Hello World!