Search code examples
gitgit-index

Git: What is the index


enter image description here

From this picture, a commit is a pointer to the root tree which is a pointer to other trees and blobs. But what is a proper view of the index?

Questions:

  • Is it a similar tree-ish with folder structures or just a flat view of blobs?

  • If the index is a tree-ish, is there much difference between a commit and the index?

  • Does the index look more like a full snapshot or a diff?


Solution

  • Same answer as this question: Decoding Git index file using C#

    The Git index file format is described here: http://git.kernel.org/?p=git/git.git;a=blob;f=Documentation/technical/index-format.txt;hb=HEAD