I taught a bucket to speak Git

(tigrisdata.com)

36 points | by xena 2 hours ago ago

3 comments

  • ctoth an hour ago

    Came here for a five-gallon bucket hooked to Dulwich (archiving rain?), Slightly disappointed :)

    Go Git and Dulwich and friends are indeed fun tech.

  • Eikon an hour ago

    Most of the pain here is the typical set of issues people run into trying to make S3 a filesystem as-is, common with S3FS-family approaches.

    ZeroFS (https://github.com/Barre/zerofs) is 9P/NFS/NBD over S3 on an LSM. Point stock go-git, or just /usr/bin/git, at a mount and skip the gymnastics. Rename is a metadata op in the keyspace, so you get it atomic on any S3โ€”no Tigris-specific X-Tigris-Rename needed.

    Different point on the spectrum, but less square-peg, also most probably much, much faster (it works great on linux-sized repos) :)

    • xena 35 minutes ago

      Author of the article here. I'm aware of ZeroFS and other similar approaches (such as something internal at Tigris that will become public at a later date), this was more of an experiment to see how far you can get with stuff I already had "on the shelf". I am going to be improving this a fair bit; I just need to plan out what I'm gonna work on and figure out the best times to stream it, etc.