2015-06-29 75 views
5

我在REDHAT 6. 我想更新我的git,我嘗試了多種方法。爲什麼我的git沒有從1.7.1更新到1.9.4

第1種方法

$百勝更新飯桶。 我得到了:沒有軟件包標記爲更新。

第2種方法

$ wget http://git-core.googlecode.com/files/git-1.8.3.4.tar.gz 
$ wget -O git-manpages-1.8.3.4.tar.gz http://code.google.com/p/git-core/downloads/detail?name=git-manpages-1.8.3.4.tar.gz&can=2&q= 

Next, install all required libraries before building GIT: 

$ sudo yum install zlib-devel perl-CPAN gettext 

Now let’s untar and build and install GIT in the /usr directory: 

$ tar xvfz git-1.8.3.4.tar.gz 
$ cd git-1.8.3.4 
$ ./configure 
$ make 
$ sudo make prefix=/usr install 
$ git --version 
git version 1.8.3.4 

得到這個錯誤。

[[email protected] ~]$ cd git-1.8.3.4 
[[email protected] git-1.8.3.4]$ ./configure 
configure: Setting lib to 'lib' (the default) 
configure: Will try -pthread then -lpthread to enable POSIX Threads. 
configure: CHECKS for site configuration 
configure: CHECKS for programs 
checking for cc... no 
checking for gcc... no 
configure: error: in `/home/qaserver/git-1.8.3.4': 
configure: error: no acceptable C compiler found in $PATH 
See `config.log' for more details 

3日法

安裝所需的軟件包

# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker 

下載和編譯的Git源

# cd /usr/src 
# wget https://www.kernel.org/pub/software/scm/git/git-1.9.4.tar.gz 
# tar xzf git-1.9.4.tar.gz 

下載和提取GIT中的源代碼之後,使用以下命令以編譯源代碼

# cd git-1.9.4 
# make prefix=/usr/local/git all 
# make prefix=/usr/local/git install 
# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc 
# source /etc/bashrc 

所有沒有任何錯誤成功執行上述命令,但是當我

$ git --version or $ git version 

不過我m到處。

Git版本1.7.1

我已經瘋了,有什麼不對任何與此身有想法???

+1

如果你的路徑上已經有'git',那麼在'/ usr/local/git/bin'中建立一個新版本,並將其添加到路徑的END中將意味着仍然會先找到舊版本。 。嘗試卸載git 1.7.1,或者安裝到/ usr/local而不是/ usr/local/git –

+0

使用'which git'來查看二進制文件所在的位置。此外,'bash'緩存二進制文件的位置,因此在卸載後,可以打開一個新的shell或[參見這裏](http://unix.stackexchange.com/questions/5609/how-do-i-clear-bashs-cache路徑到可執行文件) –

+1

更新的版本被附加到'PATH'。這意味着舊版本會先執行。你應該在'PATH'中加入'/ usr/local/git/bin'。 – alvits

回答