From: jdl@freescale.com Date: Wed, 02 Nov 2005 23:40:30 GMT Subject: New ASCII Art Message-ID: Junio, I see my name over on the TODO list: 31 Documentation 32 ------------- 33 34 * Help Jon Loeliger to find place in the documentation to place 35 his drawing. So, I have updated drawings for consideration. See if you buy these. And if so, let's ponder where they might go. Then I'll patch 'em in... I now have four ASCII Art drawings: - Fundamental git operations - Git merge operations - Git diff types - Commit DAG Revision Naming jdl Fundamental Git Index Operations ================================ 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 | +-----------+ Git Merge Operations ==================== +-----------+ | Object DB | | Backing | | Store | -------+ +-----------+ | | read-tree -m | +-----+ tree obj | |patch| | +-----+ +-----------+ | | | Index | <- - - + +------------->| "cache" | - - - >+ git-apply --index +-----------+ | | | read-tree -m -u | +-----+ tree obj | |patch| | +-----+ +-----------+ | | | Working |<-------+ +-------------->| Directory | git-apply +-----------+ Git Diff Types ============== diff-tree +----+ | | | | V V +-----------+ | Object DB | | Backing | | Store | +-----------+ ^ ^ | | | | diff-index --cached | | diff-index | V | +-----------+ | | Index | | | "cache" | | +-----------+ | ^ | | | | diff-files | | V V +-----------+ | Working | | Directory | +-----------+ Commit DAG Revision Naming ========================== Both node B and C are a commit parents of commit node A. Parent commits are ordered left-to-right. G H I J \ / \ / D E F \ | / \ | / \|/ B C \ / \ / A A = = A^0 B = A^ = A^1 = A~1 C = A^2 = A^2 D = A^^ = A^1^1 = A~2 E = B^2 = A^^2 F = B^3 = A^^3 G = A^^^ = A^1^1^1 = A~3 H = D^2 = B^^2 = A^^^2 = A~2^2 I = F^ = B^3^ = A^^3^ J = F^2 = B^3^2 = A^^3^2 Fixed-point operations: A^0 = A^{commit} A^{tree}