centos 7.2升级git版本

问题:在使用“git pull origin master --allow-unrelated-histories”命令时,提示:“error: unknown option `allow-unrelated-histories’”,经过查询发现当前使用的git版本为1.8的版本,git版本较低,因此需要升级git版本.
操作步骤如下:
(1)卸载原有的git软件及其依赖:

[root@cli-1 ~/project]
# yum remove git
Loaded plugins: fastestmirror
Resolving Dependencies
--> Running transaction check
---> Package git.x86_64 0:1.8.3.1-21.el7_7 will be erased
...

(2)下载最新的git源码:

[root@cli-1 ~/project]
# wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.18.1.tar.xz
[root@cli-1 ~/project]
# xz -d git-2.18.1.tar.xz
[root@cli-1 ~/project]
# tar -xvf git-2.18.1.tar 
[root@cli-1 ~/project]
# cd git-2.18.1

(3)编译源码:
可能设计到的一些依赖包

# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel nss  gcc perl-ExtUtils-MakeMaker -y
[root@cli-1 ~/project/git-2.18.1]
# ./configure --prefix=/usr/local/git

[root@cli-1 ~/project/git-2.18.1]
# make 

[root@cli-1 ~/project/git-2.18.1]
# make install

(4)修改环境变量,便于命令行直接调用

[root@cli-1 ~/project/git-2.18.1]
# vim /etc/profile
...
#在文件最后添加下面的命令
export PATH=$PATH:/usr/local/git/bin

[root@cli-1 ~/project/git-2.18.1]
# source /etc/profile

(5)检查git版本

[root@cli-1 ~/project/git-2.18.1]
# git --version
git version 2.18.1

使用中,可能存在的问题:
(1)在开发机上clone 代码服务器的代码分支时,发生

bash: git-upload-pack: command not found
fatal: The remote end hung up unexpectedly

原因:
原来代码服务器上的git安装路径是/usr/local/git,不是默认路径;根据提示,在代码服务器上, 建立链接文件。
解决办法:

# ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack 

(2)

bash: git-receive-pack: command not found
fatal: Could not read from remote repository.

解决办法与(1)类似:

# ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值