I’m all for doing projects like this as an intellectual exercise. It’s just that the motivation behind doing so in the article is a bit more “huh?”
I’m all for doing projects like this as an intellectual exercise. It’s just that the motivation behind doing so in the article is a bit more “huh?”
Funny enough I had downloaded a-shell and experimented with it and going git based. But ultimately didn't want my notes stored through Github. If that way works for you, cool!
My concern with this approach would be I've read through Directus' codebase and can understand it. With a self-hosted Git server like this I'd be worried if shit hit the fan and corrupted my Git files or stopped being maintained I'd be a duck out of water
And if you really just want a simple hosting system, https://tangled.sh is really easy to set up. It uses atproto (network underlying bluesky) as their identity provider and for tracking issues, PRs, comments, etc. Their "knot server" is basically just a little self-hosted go node that manages git repos. The project is fairly small atm and it's pretty much all in go so it's not too hard to skim through if you want to see how it works under the hood (or if you are afraid of needing to be able to keep it maintained long term).
You should have the same concern with anything you're hosting yourself, and you should have 3-2-1 backups to mitigate that concern. Gitea just uses regular Git repositories under the hood last i checked, and Git is an extremely mature system; I'd expect 20+ year old repositories to work fine as long as the data are kept physically intact.
Though I'd say, if you're going through all of the effort to self host something, git or otherwise, doing the "wrapper" is probably worthwhile anyway due to the convenience if you ever do need those features. It's not that much harder to do that than host a vanilla git server.
git or syncthing
(This is at least 1+ years old info, might have changed)
And a builtin admin interface to govern permissions on the above. Plus, its its own server. All of this ... is builtin to that single binary.
It has a few of its own quirks as a vcs, but its pretty much equivalent to git, both functionally & conceptually (if you know git, you'll know fossil in 5 minutes)
So, if you want a dvcs for syncing, and don't want to setup git for external access, try fossil?