同生活中的许多伟大事件一样,Git 诞生于一个极富纷争大举创新的年代。Linux内核开源项目有着为数众广的参与者。绝大多数的 Linux内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper来管理和维护代码。到 2005 年的时候,开发 BitKeeper 的商业公司同 Linux内核开源社区的合作关系结束,他们收回了免费使用 BitKeeper的权力。这就迫使 Linux 开源社区(特别是 Linux的缔造者 Linus Torvalds)不得不吸取教训,只有开发一套属于自己的版本控制系统才不至于重蹈覆辙。他们对新的系统订了若干目标:
• 速度
• 简单的设计
• 对非线性开发模式的强力支持(允许上千个并行开发的分支)
• 完全分布式
• 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)