Code

Illustration: "Fundamental Git Index Operations"
authorJunio C Hamano <junkio@cox.net>
Thu, 3 Nov 2005 21:52:44 +0000 (13:52 -0800)
committerJunio C Hamano <junkio@cox.net>
Thu, 3 Nov 2005 22:55:48 +0000 (14:55 -0800)
Jon Loeliger's ASCII art in the Discussion section.

Signed-off-by: Junio C Hamano <junkio@cox.net>
README

diff --git a/README b/README
index 0ee49d4898c32d9c7321678c2109a87235ad4d84..4a2616ba570728320f0b2cf8d7e80df32cbba603 100644 (file)
--- a/README
+++ b/README
@@ -399,6 +399,46 @@ save the note about that state, in practice we tend to just write the
 result to the file `.git/HEAD`, so that we can always see what the
 last committed state was.
 
+Here is an ASCII art by Jon Loeliger that illustrates how
+various pieces fit together.
+
+------------
+
+                     commit-tree
+                      commit obj
+                       +----+
+                       |    |
+                       |    |
+                       V    V
+                    +-----------+
+                    | Object DB |
+                    |  Backing  |
+                    |   Store   |
+                    +-----------+
+                       ^
+           write-tree  |     |
+             tree obj  |     |
+                       |     |  read-tree
+                       |     |  tree obj
+                             V
+                    +-----------+
+                    |   Index   |
+                    |  "cache"  |
+                    +-----------+
+         update-index  ^
+             blob obj  |     |
+                       |     |
+    checkout-index -u  |     |  checkout-index
+             stat      |     |  blob obj
+                             V
+                    +-----------+
+                    |  Working  |
+                    | Directory |
+                    +-----------+
+
+------------
+
+
 6) Examining the data
 ~~~~~~~~~~~~~~~~~~~~~