CentOS7なサーバーに最新版のGitを入れておくれーと頼まれたときのメモ。
下記のパッケージを入れます。
yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker git
最新版のソース取ってくるのにGitを使いたいので、一旦パッケージ版を入れます。
公式の案内では perl-ExtUtils-MakeMaker は触れられていないけど、ビルドした時下記のエラーが出たので入れます。
http-push.c:18:19: 致命的エラー: expat.h: そのようなファイルやディレクトリはありません
#include
^
必要なパッケージのインストールが終われば、ソースを取ってきて、ビルドします。
# cd /usr/local/src
# git clone git://git.kernel.org/pub/scm/git/git.git
# cd git
# make prefix=/usr/local all
# make prefix=/usr/local install
# yum remove git
インストールが終わって、パッケージ版のGitもアンインストールしたので、動作確認をしたところパスが通ってなかったorz
# git --version
-bash: /bin/git: そのようなファイルやディレクトリはありません
# ln -s /usr/local/bin/git /bin/git
# git --version
git version 2.8.3
symlinkをはって、持っペン確認するとOK
最初からソースでインストールせずにパッケージ版入れて、リポジトリをCloneして最新版入れてやると楽だし、今後バージョンが上がっても git pull して make ~ をすれば最新版がインストールできるんで楽かなとおもます。
公式ページからソースを落として、ビルドしてもいいけど新しいバージョン出た時にいちいちソース落とすの面倒くさいと思います。