gitをソースコードから入れる

## 環境
CentOS release 6.4 (Final)

## 経緯
1. yumで入れられるgitが1.7.1までだった(2014/12/11現在)
1. ius、wandiscoのrpm使ってもうまく入らない...
1. やむなし...ソースコードからやるか...

## 手順

~~~console
# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# wget https://www.kernel.org/pub/software/scm/git/git-2.2.0.tar.gz
# cd git-2.2.0
# ./configure
# make
# make install
# git --version
git version 2.2.0
~~~

最初に、必要なパッケージを入れておかないと、make時にエラーが出てくれるパッケージもあるが、
**インストールしてから動かない**ということ(下記その５)も起きるので注意

## この手順に至るまでの、今回起こったエラー対処

#### その１：Makefile.PLを書くのに必要なモジュールがない
~~~console
# make

...省略...

    SUBDIR perl
/usr/bin/perl Makefile.PL PREFIX='/usr/local' INSTALL_BASE='' --localedir='/usr/local/share/locale'
Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 3.
BEGIN failed--compilation aborted at Makefile.PL line 3.
make[1]: *** [perl.mak] エラー 2
make: *** [perl/perl.mak] エラー 2
~~~

~~~console
# yum install perl-ExtUtils-MakeMaker
~~~


#### その２：ツール操作言語が最適化されてない
~~~console
# make

...省略...

    SUBDIR git-gui
GITGUI_VERSION = 0.19.0.2.g3decb8e
    * new locations or Tcl/Tk interpreter
    GEN git-gui
    INDEX lib/
    * tclsh failed; using unoptimized loading
    MSGFMT    po/bg.msg make[1]: *** [po/bg.msg] エラー 127
make: *** [all] エラー 2
~~~

~~~console
# yum install tcl*.x86_64
~~~

#### その３： msgfmtがない

~~~console
# make

...省略...

Manifying blib/man3/Git.3pm
    SUBDIR templates
    MSGFMT po/build/locale/bg/LC_MESSAGES/git.mo
/bin/sh: msgfmt: コマンドが見つかりません
make: *** [po/build/locale/bg/LC_MESSAGES/git.mo] エラー 127
~~~

（ここで何故か）

~~~console
# yum install expat-devel
~~~

#### その４：だからmsgfmtがないんだって

~~~console
# make

...省略...

/usr/bin/perl -pe "s<\Q++LOCALEDIR++\E></usr/local/share/locale>" <Git.pm >blib/lib/Git.pm
    SUBDIR templates
    MSGFMT po/build/locale/bg/LC_MESSAGES/git.mo
/bin/sh: msgfmt: コマンドが見つかりません
make: *** [po/build/locale/bg/LC_MESSAGES/git.mo] エラー 127
~~~

msgfmtが入ってるgettextをインストール
(公式ではgettext-develと書いてありましたのでそちらがオススメかと)

~~~console
# yum install gettext
~~~

#### その５：クローンできない()

~~~console
# git clone https://gist.github.com/abcdefghijkmnlopqrst.git
Cloning into 'abcdefghijkmnlopqrst'...
fatal: Unable to find remote helper for 'https'
~~~

curl-develが入ってないことが原因。
アンインストールして、コンパイルからやりなおし...

~~~console
# make uninstall
make: *** ターゲット `uninstall' を make するルールがありません.  中止.

# cat Makefile | grep uninstall
#
~~~

なるほど、つんだ。

アンインストールする手順を、別に書きました。
http://qiita.com/soeda_jp/items/fd7602ecf95db656cb05

## 参考
[最新のバージョンのGitをソースコードからインストールする](http://qiita.com/akata/items/57c81ae969255e3c9a70)

[CentOS6.5にGitをソースコードからインストールする](http://tomoyamkung.net/2014/08/27/linux-git-install/)

[VPS 鯖に git いれたよ](http://d.hatena.ne.jp/donbulinux/20111017/1318835429)

[CentOS 6.3にGit1.8.1をインストール]
(http://ameblo.jp/rb26/entry-11443985212.html)

[git clone https:/~ でfatal: Unable to find remote helper for 'https'が出たとき](http://qiita.com/a_ishidaaa/items/8bb63a625e8a89b21a12)

[Git - Gitのインストール](http://git-scm.com/book/ja/v1/%E4%BD%BF%E3%81%84%E5%A7%8B%E3%82%81%E3%82%8B-Git%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)