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?