Understanding Peer-to-Peer Git Forges with Radicle
blog.vmsplice.net
blog.vmsplice.net
I think p2p systems are powerful for bandwidth throughput like torrents and maybe video. But for content that needs high availability (like a code repo) it seems like central servers that keep the data alive are needed. And to me GitHub is exactly that... a central location that helps me keep my repo alive. I can easily just switch to another provider (gitlab) if I don’t like GitHub’s availability policy.
So I think radicle is a cool idea but git is already decentralized. I think a more interesting path forward is allowing other systems to follow git’s path. Maybe we need social networks to also have a strong decentralized foundation protocol like git which allows me to easily change which provider serves my social network data.
Compare the risk of some online "friend" you've never met not seeding vs Github being down. With your approach I'd need to seed like 5 other projects in order to stand a chance to get a better uptime vs. Github (which is free and requires no effort from my side).
I still haven't seen an explanation of why go through all this trouble rather than set up own Git server at own domain, like many OSS projects already do (example: GNU.org)
You don't need to compete with github's uptime either. If you want that, you would setup/rent a seed. Without it you can rely on some kind of eventual replication.
Also GitHub is free - for you, for now. MS can change it at any point. It's also not accessible from a number of countries.
No, you don’t. You can push even to a bare repo on disk. If you want to share over network, ssh access vis IP address is enough.
> Also GitHub is free - for you, for now. MS can change it at any point.
It‘s easy to move.
> It's also not accessible from a number of countries.
That’s not really GitHub‘s fault, though. Any business / person operating a seed would have to comply with the same laws as GitHub today.
In that case you lose discovery, since your IP is likely to change and with SSH you still need to deal with identities. And you still need to operate that host. That's worst of both worlds.
> It‘s easy to move.
If use a separate social presence - it's easy-ish. If all your links point to GitHub repo - there's work involved, depending on the scale of the project. And that's assuming you did not buy into any of the value-add projects on GitHub.
> Any business / person operating a seed would have to comply with the same laws as GitHub today.
Apart from seeds in those countries which you can choose whether you want to talk to or not. So even if it doesn't matter to you, it does solve people's problems.
Torrent trackers have come up with many mechanisms to incentivize contribution, usually new data and bandwidth. It's definitely possible to reward redundancy instead: the less copies there are, the more users are rewarded for storing a copy on their computers.
Also forgefed has been around for a while and I haven't seen any progress since two years ago when I last checked on the project.
For example, integrating the bug tracker into the git repo. That would be very useful, since it’s one of the most important reasons people use github at all.
What Radicle adds to the mix is a gossip / social layer around git, which is an interesting idea.