Gitのドキュメント(マニュアル,man,doc)を100%確実にインストールする方法

これは、gitでヘルプを見ようとして
git log --help
No manual entry for git-log
ヘルプが見れず、仕方なくgitのソースコードをmakeしてドキュメントをビルドしようとするもasciidocだかxmltoだかのよくわからないソフトウェアのバージョン整合性の問題でエラーが出て、そのよくわからないソフトウェアを直すやり方が皆目見当がつかず数時間格闘してソフトウェアエンジニアとしての自信を喪失したのち、ついに別のやり方を発見してmanインストール成功して人生生きるに値すると悟りを開いた男の記録である。

gitのドキュメントを自分でビルドするのは苦行でしかない

CentOS5でgitのソースコードをcloneしてきて
$ make all doc

(中略)                                                                               ^

    ASCIIDOC git-apply.xml
    XMLTO git-apply.1
xmlto: input does not validate (status 1)
http://www.oasis-open.org/docbook/xml/4.5/ent/isonum.ent:1: parser error : Content error in the external subset
HTTP/1.1 200 OK
^
http://www.oasis-open.org/docbook/xml/4.5/ent/isonum.ent:1: parser error : Content error in the external subset
HTTP/1.1 200 OK
   ^
http://www.oasis-open.org/docbook/xml/4.5/ent/isonum.ent:1: parser error : Content error in the external subset
HTTP/1.1 200 OK
      ^
make[1]: *** [git-apply.1] エラー 1
make[1]: ディレクトリ `/home/hoge/src/github/git/Documentation' から出ます
make: *** [doc] エラー 2
このエラー、数か月前にも見た。
Ubuntuでも見た。
そのときにも調査したけど解決できなかった。
だから私のUbuntuではgitのマニュアルが見れない。

今日、CentOS5でこれを見た。

もういやだ。
こんなのは苦行でしかない。
私は単にマニュアルをみたいのであって、xmltoだかdocbookだかに詳しくなりたいのではない。

しかしその論法でいくと、私はそもそもgitに習熟したいわけではなくて単にPHPでコードを書いてウェブサービスを開発したいだけであり、 さらに言うとPHPコードを書きたいのではなくウェブサービスを作りたいだけであり、もっと言うとウェブサービスを作りたいわけではなく報酬が欲しいだけであり、・・・あれそうだっけ、何か違う。

そうだ、gitには習熟したいけどasciidocとxmltoには全く興味がない。
そうだ、asciidocとxmltoは避けて通りたい。

長い前フリ失礼しました。

天の助け!

ここで一筋の光明がありました。
http://stackoverflow.com/questions/897477/installing-git-on-os-x
you could just download the git-manpages-*.tar.gz that are published along with the source. They're published because the asciidoc toolchain is known to be a bit fragile, and a considerable effort to get everything installed and arranged.

(意訳)単純に、公開されているgit-manpages-*.tar.gzファイルをダウンロードすればいいんだよ。
asciidocツール群は壊れやすくてインストールがめんどくさいことで有名なの。
だから、あらかじめビルド済みのmanファイルが公開されているのさ。
おお~~~!!
なんか納得した!!

解決方法:ビルド済みのmanファイルをダウンロードして解凍すればおk!

wget https://www.kernel.org/pub/software/scm/git/git-manpages-1.8.3.1.tar.gz
sudo mkdir /usr/local/git-manpages-1.8.3.1
sudo tar xvfz git-manpages-1.8.3.1.tar.gz -C /usr/local/git-manpages-1.8.3.1
export MANPATH="/usr/local/git-manpages-1.8.3.1:$MANPATH"
git log --help
見、見れたあぁぁぁぁ~~~!!!
全私が泣いた。

あとは.zshrcか.bash_profileにMANPATH設定を1行書けばおkです。
export MANPATH="/usr/local/git-manpages-1.8.3.1:$MANPATH"
カテゴリ:

人気記事