Quick Start
pre-requesite: install ngit and git-remote-nostr
download binaries and add them to a directory from which they can be run globally:
alternatively, if you have cargo installed runcargo install ngit
or build from
source using this git clone url.
Contributor Quick Start
pre-requesite: install ngit and git-remote-nostr
1. find repository
- search gitworkshop.dev/search for the repository
- explore PRs and issues
- copy the git clone url (or press the green clone button to copy the clone command)
2. clone repository
- using your prefered git client or with the git command you just copied:
git clone nostr://npub123/repo-identifier
3. submit PR
- push a branch with the prefix `pr/` for example using git commands:
git checkout -b pr/great-feature
git commit -am "improve the world"
git push -u
- OR for more options such as including a cover letter use ngit:
ngit send
4. view PRs
- for open PRs view remote branches with prefix `pr/` for example using git command:
git branch -r --list origin/pr/*
- OR using ngit:
ngit list
5. update PR
- if you are the PR author, or a maintainer you can add commits to a PR:
git commit -am "extra thing"
git push
- or revising it:
git commit -a -amend
git push --force
Maintainer Quick Start
pre-requesite: install ngit and git-remote-nostr
1. create a git repo and push to a git server
- for example using git commands:
git init
git commit -am "initial commit"
// create repository on git server and the:
git remote add origin https://dm.co/usr/my-repo.git
git push -u origin master
2. initialize on nostr
- initialize:
ngit init
- use the nostr remote to push state to nostr and git server(s):
git remote set-url origin nostr://npub123/my-repo
- ensure all maintainers push to the nostr remote and not git server directly so that state on nostr remains in sync
3. view PRs
- for open PRs view remote branches with prefix `pr/` for example using git command:
git branch -r --list origin/pr/*
- OR using ngit with more options such as applying them directly:
ngit list
4. merge / incorporate PRs
- the PR status will be automatically updated if you merge the branch:
git checkout master
git merge pr/great-feature(e8246b2)
git push
- use gitworkshop.dev to make comments or manually set the status.
ngit list
5. consider turning off PRs and issues elsewhere
- ie. on git server(s) so they are managed solely on nostr.
- Note: for github use
Repo Settings > Features
for issues but turning off PRs isn't yet possible.