← Back to context

Comment by psychoslave

14 hours ago

I wonder what tradeoffs make Git faster for large repository. Though for a long time that excluded large blobs.

None, it just received the help of the vast majority of well-payed SWE to make it that way

Git has format dedicated for storing snapshots of trees and diffing them, fossil just uses SQLite and few tricks to keep size small

  • Of tree, or of sub-DAG?

    "Just use SQLite" feels like missing the forest for the tree (the pun being coincidence here). That is, certainly any database out there already use all kinds of very efficient structures to walk graphs under the wood.

    Maybe Git has a more bespoke approach to its specific goal of source code as main topic to deal with, and finner layer of abstractions. Which could also explain the clumsy leaky interface it presents.