O HAI THIS BLOG PURPZIEZ 2 B UZED AZ MAH PLESIOUS MEM. :)

2011/11/30

read(debianjp_git_book, &me, 306 * PAGE_SIZE);

B「やぁ,ジョニー,聞いてくれよ.」
J「なんだい,ボブ.」
B「この前,非リア充過ぎて棒茄子の使い道が無いみたいな事をブツクサ言っていたら,ひょんな事からDebianJPのエラい人の愛猫にトイレ的なモノを買ったんだ.
J「経緯がイマイチよく分からないケド,それでどうしたんだい?」
B「で,お返しだってんで,献本してくれたのよ.」
J「ほうほう,さすがエラい人だね.何を貰ったんだい?」
B「『Gitによるバージョン管理』ってブツだね.」
J「え?
B「え?
J「……」
B「……」
J「Un ange passe.
B「と言う訳で,せっかくだから書評を手伝っておくれよ.」
J「オーケー,仲良く罪滅ぼしと逝こうか.」

B「まずは,ボクが気に入ったトコロから話そうか?」
J「うん.」
B「ボクが気に入ったのは,第2章と第5章のストーリー仕立ての説明だね.」
J「ほうほう.」
B「第2章は,秘蔵${HOME}/.*rcをgitレポジトリにぶっ込んで少しずつgitの扱いに慣れて行くってカンジ.出だしが印象的だね.」
どの環境にもノートPCのホームディレクトリ下にある設定ファイルをコピーして使っていた。……それでもなんとかやってきたのだが、先日誤って設定ファイルを削除してしまった。……なんとか苦労して元に戻すことができたものの、こんな面倒なことは二度とやりたくないと強く思うようになった。
B「ジョニー,どうしてボクがこの出だしが気に入っているか分かるかい?」
J「『楽する為の苦労を惜しまない』ってのは,伝統的ハッカー気質の一つだよね.」
B「そうそう.一般人には理解されない事がタマにあるよね.バージョン管理ツールの有用性を説いても,終いには『yymmdd.zipはウチの文化だから』とか言い出す人とか居るからね.」
J「それはモノスゴク実話臭くて笑えないなぁ.」
B「そう言う意味では,分散バージョン管理ツールの有用性をストーリー仕立てで一通り説明してあるってのは,頭の固いヒト向けの布教用に便利かもね.」
J「あぁ,それはあるかも.」
B「第5章は,複数人での開発を想定したgitの運用についてのストーリー仕立ての説明だね.」
J「分散バージョン管理ツールってさ,サーバが必ずしも必要ではないからボッチで使ってもそれなりに便利なんだけど,いざ複数人で運用ってなるとある程度作法と言うか決まりと言うかコンセンサスみたいなモノが無いとグチャグチャになるよね.」
B「そうだね.で,終いには『ヨクワカランので現行の最新版でもう一度レポジトリ作り直す』とか言い出すんだろ? つーか,現行の最新版がどれか分かってたら作り直す必要なんか無ぇだろっつーの.」
J「……今日はモノスゴク実話臭くて笑えない話がポンポン出るね.」
B「この物語はフィクションです.登場する人物・団体などはすべて架空のモノであり,現実とは一切関係ありません.」

J「次は,ボクが気に入ったトコロを話そうか.」
B「頼むよ.」
J「ボクが気に入ったのは第7章でOSS開発への参加に触れているトコロかな.あと,第13章でgitレポジトリの中身について説明しているのは面白いね.」
B「ほうほう.」
J「第7章では,ストーリー仕立ての展開で,コミット権の無いdownstreamとコミット権の有るupstreamでのgitの運用について説明してる.続く第8章で詳しく解説されているrebaseとかについての巧い準備体操と言うカンジがするね.」
B「OSS開発にメールベースで大量のpatchをやり取りしているらしいってイメージしか無い人達向けに,更に一歩,開発側に踏み込んだ内容ってカンジだね.」
J「そうそう.」
B「実際には,プロジェクト毎にChangeLogの体裁やらソースコードのインデントまでローカルルールが結構あるトコも多いよね.」
J「patches are always welcomedなトコがほとんどだから,別にそんなにビビる必要無いケドね.」
B「でもやっぱ最初っからカッコ良くキメたいのさ,フツーは.」
J「そんなもんかね.」
B「で,第13章は?」
J「gitレポジトリの中身,詰まるトコロ,.git/以下がどうなっているかについてだね.」
B「ほう.」
J「gitの運用に従って.git/以下に生成されるオブジェクトとハッシュ値について……ややバイナリな話だね.」
B「16進数萌えにはタマラナイ内容と?」
J「そんな萌え属性は聞いた事無いのだけれど,世の中広いからね,そう言う需要もあるのかな……」

B「本全体の印象としては,ストーリー仕立ての導入に続いて詳しい解説と言うカンジの繰り返しかな?」
J「英語のman pagesだけだと挫けてしまいそうな人には,良い日本語情報かもね.」
B「gitに限らず,分散バージョン管理ツールってRCSやCVSみたいな古代遺物を触ってなくてもフツーに使い始められるからもっと普及するとイイね.」
J「早く『yymmdd.zipはウチの文化だから』とか言う人が居なくなるとイイね!」