3 ms·
Git is a peer-to-peer tool, but flexible enough to let you use a workflow with a more-equal-than-others peer, or even communicate with actual centralized server
by forgottenpass 9y ago
Git is a peer-to-peer tool, but flexible enough to let you use a workflow with a more-equal-than-others peer, or even communicate with actual centralized servers that expose a git interface.
Git doesn't swarm in a way that often gets associated with the idea of "p2p" by the prevalence of more popular p2p protocols used for file-sharing or cryptocurrencies. Nor is it geared towards world-readability. But none of those are intrinsic properties of peer to peer protocols.
I can (and do) use the git software on my computer to pull from co-workers development desktops running the same git software as me. And they pull from me, all with no external servers used coordinate that exchange of trees. That makes git peer to peer. No amount of tools built on top of git that require treating one peer as the a point of centralization can undo that. It just means that those tools aren't p2p.
This distinction is often invisible to users, and I don't blame people for missing it because the business model of GitHub and GitHub-competitors rests on everyone thinking they're necessary.
- ocds 9y agoThank you for your accurate answer!