gitをつかいはじめてみたけど、どうもわたしは基本的な概念が分かっていないぽいので、本を探してみました。見つけたのは2冊。

Git Internals

Git Internalsは$9のPDF本。大変安い。Internalsというだけあって、仕組みを解き明かす本のようです。

Pragmatic Version Control using Git

Pragmatic Version Control using Gitは、名前から推測つくように、The Pragmatic Bookshelfから出ている本。電子版$22, 書籍版$34.95 + 送料, 電子+書籍$43.75。

まずはPragmatic Version Control using Gitの電子版を買って、読み始めています。iPhoneでも読めるので通勤の友です。前回疑問に思ったレポジトリをworkingの関係はすぐにすっきりしました。

Gitには3種類のエリアがあります: working tree (ここで実ファイルを編集), repository(コミットされたファイルの各バージョンが入っているデータベース), index(or staging area)(これからコミットされるファイルが一時的に入っている場所)。このindexの存在意義がいまのところ私には分かっていませんが、indexとかstating areaとかcachedとかいわれるものが、レポジトリとworkの間にはさまっていることを理解しておくのがGitをちゃんと理解してつかう第一歩なように思います。

その他にもGitはいろいろ特徴的なようです。本質的に「内容の」変更がtrackされること(ファイルではなく!)、branchが本質的でその処理も非常に軽いこと(だからbranchを使いまくる、従来のVCSからみると「過激な」使い方も気楽にできる)、VCSというよりは履歴つきファイルシステムのようなものであること、等々。