but without central points of failure. The aim is to create continuous distributed software development processes, without having to rely on complex or centralized services. The first implementations will be designed to illustrate these use cases in more detail.
Git object data is not designed to be stored in nostr, instead, nostr will store the signaling, update, version or commit data. Git object data will live in existing git repositories, github, gitlab, gitea, gogs, ssh, file system etc.
The prefix `nrepo` can be used in front ends that support it, to allow easier copy and paste. An example would be similar to the popular npub system e.g. `nrepo1ris1683fw6n2mvhl5h6dhqd8mqfv3wmxnz4qph83ua4dk4006ezsrt5c24`
**`tags`** MUST contain tag "c" which is equal to the hex-encoded git commit hash. Typically this will be a 40 character sha-1 hash, but git will soon be allowing sha-2 hashes too
**`pubkey`** SHOULD be associated with a given repo. This could be communicated out of band, or, for example MAY be included in a file in the root directory of the repo, `nostr.json`
The design of this NIP is such that each repo will have a public key used to send updates to a relay. The repos itself will be able to interact with nostr.
That key SHOUL appear in the top level directory of the repo in a file called `nostr.json`