Content of .git folder
Git stores snapshots (exact content of the files) at the point of a commit.
The content is stored in the objects sub-directory. There are 4 kinds of objects:
- used for storing the contents of a single file
- contains references to other blobs or subtrees
- contains reference to another tree object and some other information (author, committer etc.)
- Another reference to a commit object
Git Branching Models
VFS for Git
VFS for Git is a virtualized filesystem used to bypass assumptions about repository size, allowing Git repositories to scale up to large repositories.
With GVFS, an initial clone downloads a set of pack-files containing only commits and trees. These objects are sufficient for generating a view of the working directory, and examining the commit history with git log.
GVFS allows dynamically downloading objects as needed.