CVS (1990) and Subversion 129 (2000) kept history on one central server, so every commit and log was a network round trip. The Linux kernel used the proprietary, distributed BitKeeper instead, until its free license was withdrawn in April 2005. Linus Torvalds wrote a replacement in about two weeks: the first commit in Git 1,932 's own repository, dated 7 April 2005, is "Initial revision of 'git', the information manager from hell", eleven files including cat-file.c, write-tree.c and commit-tree.c, commands you will run in The Object Model. Junio Hamano became maintainer that July and still is.
| Property | Centralized (CVS, Subversion) | Git |
|---|---|---|
| Where history lives | On one server | In every clone |
| Commit, log, diff | Network round trip | Local, milliseconds |
| Branch cost | Server-side copy | A 41-byte file |
| Integrity | Trust the server | Objects named by hash |
Mercurial 45,177 , born the same month, was arguably friendlier, but GitHub 29 (2008) made Git the default of open source. Microsoft moved Windows development to Git in 2017, Bitbucket 2,046 dropped Mercurial in 2020, and in Stack Overflow's 2022 Developer Survey about 93% of respondents used Git.