Theory
Theory: Default is Gravity; Lock-in is Extra Objects Outside Git
GitHub became default by network effects, not by owning the Git protocol. Lock-in lives in identity, Actions YAML, Packages, issue graphs, and marketplace apps — data Git does not clone.
Invariants
- A Git remote is replaceable; a social graph is not.
- CI, packages, and issues are forge databases.
- Multi-homing (two remotes) preserves Git objects only.
- Regulation and data residency constrain where a forge may run.
Git objects portable
PRs, Actions, Packages, stars forge-specific
What can break
- Calling
git clonea full backup of a GitHub org.
How to read this chapter
How GitHub won, lock-in, geopolitics, what “beyond” means, comparison rubric.