gitworkshop.dev
a decentralized git workflow on nostr for freedom lovers
nostr
any git server
gitworkshop.dev
git-remote-nostr
ngit
How it works
Git is a decentralized version control system, yet most freedom tech projects use centralized walled gardens on top of git as a social and collaboration layer for code changes.
Gitworkshop.dev, git-remote-nostr and ngit are tools to enable code collaboration over nostr. Gitworkshop.dev provides a visual interface to discuss PRs and open issues. git-remote-nostr enables PR creation, review and incorporation using standard git tooling. ngit handles repository setup and advanced PR submission.
Quick Start
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.
for the contributor
clone the nostr url and use normal git operations with tool you are used it (eg. your IDE)
git clone nostr://npub123/repo-identifier
// use pr/ branch prefix to create a nostr PR
git checkout -b pr/great-feature
git commit -am "improve the world"
git push -u
// any branch with pr/ prefix is nostr PR
git branch -r --list origin/pr/*
for the maintainer
// create a git repo and push to a git server
git init
git commit -am "initial commit"
git remote add origin https://dm.co/usr/my-repo
git push -u origin master
// announce on nostr
ngit init --identifier my-repo
// push to nostr and git server(s) via remote helper
git remote set-url origin nostr://npub123/my-repo
// pushing merged commits updates PR status
git merge origin/pr/great-feature(e8246b2)
git push