Replying to Avatar DanConwayDev

Here is a spec: https://github.com/nostr-protocol/nips/pull/1249

I have been cooking up a git remote-helper that would make working with nip34 feel more like using native git. cloning something like nostr://naddr123 would proxy requests to the git server(s) in the `clone` tag and if the `refs` tag exists, only fetch updates which match the repo event. For a maintainer `git push` would update the repo event and push to all git_servers listed in `clone`.

nostr:npub1elta7cneng3w8p9y4dw633qzdjr4kyvaparuyuttyrx6e8xp7xnq32cume has also been exploring the idea of doing away with the git server and using a git remote-helper that gets git data via blossom.

Hopefully the spec could meet all of these use cases.

I like the remote helper for naddr1 codes, but can you replace the :// with : for consistency? Or maybe just do the naked naddr1 directly.

The git-remote-helper that takes stuff from Blossom could work (I don't think it is worth doing, but that's another matter), but it is somewhat out of the scope of NIP-34: it's just a new way of hosting git repos. We could add it there too if it turns out to be good.

Reply to this note

Please Login to reply.

Discussion

I think git helpers require URL format, like ://

True, that settles it then.

if all commits are like notes ( content/hash ), is possible to expose a git repository as nip34 nostr notes, with some kind of reverse proxy ?

I think we would have problems when committing large files in nostr events. Probably there are relays that limit the size of events. And this is the kind of error that doesn't surface for weeks when a project is started.

it can work for read only project.

yes. the first ngit prototype recreated the entiregiit repo with a nostr event per commit. it ran into these limits.

Yes, git forces you to specify as either nostr://naddr123 or the even more ugly nostr::naddr123