git-ssb packages each commit into an SSB message. If the commit is too large for the 8k text limit, it is stored as a "media" file and linked. SSB provides an ipfs-like distributed media storage (referenced by hash and can be served from any node that has it).

Reply to this note

Please Login to reply.

Discussion

My original ngit prototype operated on a event per commit basis. I considered nip94 for storing large commits. Storing files is less easy with nostr. HORNET seems interesting. For file storage on nostr, paid for through micro payments.

Git does lots of clever things behind the scenes to reduce space usage and makes pull, push and clone low bandwidth. You lose that somewhat if you are storing each commit as a file.