Git is a distributed version-control system: software that records the full history of changes to a set of files so that many people can work on the same code at once. Linus Torvalds wrote the first version in April 2005 to manage development of the Linux kernel, after the kernel could no longer use the proprietary tool it had relied on. The first commit in git’s own repository, by Torvalds, is labeled “Initial revision of ‘git’, the information manager from hell” and is dated April 7, 2005.
In the same week, on the Linux kernel mailing list, Torvalds described what he was building in blunt terms. “Never mind merging,” he wrote of the early prototype. “It’s not an SCM, it’s a distribution and archival mechanism.” He noted that he had “worked on it (and little else) for the last two days,” underscoring how quickly the core was assembled.
The design that emerged is built around content-addressed storage: every file, directory tree, and commit is identified by a cryptographic hash of its contents, which makes history tamper-evident and lets git tell quickly whether two repositories hold the same data. Branching and merging are cheap, and because every clone carries the complete history, most operations run locally without contacting a server.
Git went on to become the dominant version-control tool in software, used far beyond the Linux kernel for which it was created. Day-to-day maintenance of the project passed early on from Torvalds to Junio Hamano, who has shepherded it for most of its life.