| ▲ | js2 2 hours ago | |||||||||||||
Objects are your files. Underlying git is a content-addressable filesystem. The objects are referenced by trees. A tree is just a directory. The trees are then referenced by commits and/or tags into a DAG with named pointers into various parts of it (which are your branch and tag references): https://git-scm.com/book/en/v2/Git-Internals-Git-Objects Because it would be terribly in-efficient to have a bunch of loose objects, git periodically groups them together into packs. To save space, the objects are compressed against one another (delta compression) within the packs. https://git-scm.com/docs/git-pack-objects https://github.com/git/git/blob/master/Documentation/technic... When pushing or pulling, the git transfer protocol basically enumerates what objects each side has so that it only needs to transfer the difference. On top of that, it delta compresses the objects on each side that aren't already grouped into packs against each other to save space. https://github.com/git/git/blob/master/Documentation/technic... Because git is an open-source project written by nerds, it shows you all of this information. Feel free to ignore it! But if you really want to know, it's all documented both in the git book and git documentation directory, both linked above. (Caveat: I'm working from memory and surely got some detail at least slightly wrong.) | ||||||||||||||
| ▲ | genocidicbunny 36 minutes ago | parent | next [-] | |||||||||||||
Now explain this to an artist with very little programming experience beyond what they picked up from their coworkers. I don't mean to be too glib, but some programmers have this decrepit idea that anyone working with computers should understand programming to be able to fully utilize them. I worked in gamedev, and many of my colleagues were brilliant, but your comment would read as complete nonsense to many of them. That is the problem git has in the gamedev space. You're trying to manage teams of programmers, designers, sound engineers, gameplay specialists, producers...even c-levels. The parent comment to yours is right, to many many people who work on things that Lore could be useful for would find git to be gobblygook. | ||||||||||||||
| ||||||||||||||
| ▲ | anigbrowl 17 minutes ago | parent | prev [-] | |||||||||||||
Respectfully, I think you're missing the point. The GP is not asking for an explanation (and could look that up from the Git docs) but commenting on how user-hostile it is. There's lots of software like this, which is so unfriendly that once you've learned the minimum of how to do something and verify it worked, you don't want to touch it any more unless you really need to. CLI output should be in plain language and omit or minimize unnecessary detail absent a -verbose flag - for example, I'm just not interested in how many threads something took unless I'm working on it. As a user, I want to be focused on the task I'm doing, not on the perfromance of the tool. | ||||||||||||||