5 ms·
For me Git has also worked very well for small projects. I actually learned it initially by using it for my masters thesis. One correction: Git does not store
by Aga 11y ago
For me Git has also worked very well for small projects. I actually learned it initially by using it for my masters thesis.
One correction: Git does not store changes at all. It stores all the versions of files as separate "blobs". What keeps .git small, is that Git compresses the object database to pack-files. "git gc" does this for you.
Pro Git has a great chapter about how Gits internals work:
https://git-scm.herokuapp.com/book/en/v2/Git-Internals-Plumbing-and-Porcelain https://git-scm.herokuapp.com/book/en/v2/Git-Internals-Plumb...
This picture sums the model nicely:
https://git-scm.herokuapp.com/book/en/v2/book/10-git-internals/images/data-model-4.png https://git-scm.herokuapp.com/book/en/v2/book/10-git-interna...
For me studying Git internals has been a good lesson in software design. Git's core is very simple, yet somehow that makes it a really versatile tool.