Damus
DanConwayDev · 1w
What do you mean by 'where the clones are'? The clone URLs are listed in the announcement event. The actual protocol is the best place to look: https://gitworkshop.dev/npub15qydau2hjma6ngxkl2cyar74wz...
Silberengel profile picture
Yes, but if I look at actual announcements, they only contain the GRASP addresses. How does the GRASP server know where to get the repo from, if I only tell it to look at itself? Is there some second announcement event, that only goes to the GRASP servers?

```
{
"content": "",
"created_at": 1768763767,
"id": "60a693e1e5823d91464e7de8ef28bb435677b4e46e96d5bd20923c9f458a56cd",
"kind": 30617,
"pubkey": "3bf0c63fcb93463407af97a5e5ee64fa883d107ef9e558472c4eb9aaaefa459d",
"sig": "8310e17b5d203b3080ca42bc6060df344828d33a23a516e9bcf3e7d8ac02574a2d88cb23ce42ce4aa6fb52efb23029d09479952f8eb75399c88b104c3753c4b5",
"tags": [
[
"d",
"gitview"
],
[
"name",
"gitview"
],
[
"description",
"a small single-page web app for browsing nip34 repositories, mainly grasp"
],
[
"web",
"https://gitworkshop.dev/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6/gitview%22
],
[
"clone",
"https://gitnostr.com/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6/gitview.git%22,
"https://relay.ngit.dev/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6/gitview.git%22,
"https://basspistol.org/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6/gitview.git%22,
"https://pyramid.fiatjaf.com/npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6/gitview.git%22
],
[
"relays",
"wss://gitnostr.com",
"wss://relay.ngit.dev",
"wss://basspistol.org",
"wss://pyramid.fiatjaf.com"
]
],
"cached_at": 1771228272386
}
```
DanConwayDev · 6d
The repository state is stored in the repository state event. The maintainer publishes a new /updated state event and pushes the associated new git data to the grasp servers. The ngit git plugin is convenient for this all behind a `nostr://` remote. Nak also has support (run `nak git --help` and som...