this post was submitted on 13 Nov 2023
9 points (90.9% liked)
Git
2868 readers
2 users here now
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
Resources
Rules
- Follow programming.dev rules
- Be excellent to each other, no hostility towards users for any reason
- No spam of tools/companies/advertisements. It’s OK to post your own stuff part of the time, but the primary use of the community should not be self-promotion.
Git Logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Not much new here (I think I saw nearly the same description of Git history a short while ago), and there are a few factual errors in there - or at least parts that are not clear.
The "tree" objects have nothing to do with the
tree
command, and nothing to do with how repo objects are stored on the filesystem. You can display tree objects with "git cat-file -p
" (just like any type of objects), but also with "git ls-tree
" command.The "commit" objects also store the reference to previous version (previous commit) in the history, which is very important. It enables Git to perform merges fast and well.
A bit pedantic, but "tag" objects can point to any type of object, though tags pointing to commits are most common.