Instead of using git as a database, what if you used database as a git?
@andrewnez @stsp wasn't this done a few years back? I think maybe by AWS? They also leaned on libgit2 to interpose a SQL storage layer into git operations. They ran across the same storage size trade-offs of lacking delta-pack optimisations, but if I recall correctly their big lesson learned was that standard CLI git operations slowed down by a few thousand times because of an unexpectedly high number of round trips to the database.
Is this ringing any bells? I'll see if I can find it.
@andrewnez
This reminds me of https://m.youtube.com/watch?v=wN6IwNriwHc
Although this (unlike that video) has practical use
@andrewnez does forgejo really fork out to run the git binary? Why would it not just use libgit 😨
@equinox https://github.com/go-gitea/gitea/issues/5142 i think it's to avoid CGo
@andrewnez when aiming for operational simplicity, feels like SQLite would be a better fit than Postgres, especially when all the interactions come in through the network anyway. (See also: Fossil?)
@djc forgejo uses postgresql, that was the main driver