BitKeeper、Linux 和许可纠纷:Linus 如何在 14 天内写出 Git

💡 原文中文,约7300字,阅读约需18分钟。
📝

内容提要

这篇文章讲述了BitKeeper、Linux和许可纠纷的故事,以及Linus如何在14天内写出Git。文章介绍了BitKeeper作为Linux内核版本控制工具的历史,以及Linus对CVS和Subversion的批评。然后讨论了BitKeeper许可证引发的争议,以及Linus决定寻找Git替代品的过程。最后,文章提到了Git的诞生和发展。

🎯

关键要点

  • 2005年4月3日,Linus发布了Linux内核候选版2.6.12-rc2,这是最后一个非Git版本。
  • 在使用BitKeeper之前,Linus采用手动版本控制,开发者提交补丁,Linus审核后合并。
  • Linus批评CVS和Subversion的集中性,认为分布式版本控制更适合Linux开发。
  • BitKeeper是一个分布式源代码管理系统,允许每个开发者拥有自己的版本库。
  • Linus对BitKeeper的评价很高,认为它改变了他的工作方式,并激发了Git的灵感。
  • BitKeeper的许可证引发争议,限制开发者在使用期间不得参与竞争工具的开发。
  • Linus认为使用最好的工具是务实的,但与BitKeeper的许可证存在矛盾。
  • 2005年,开发者Andrew Tridgell违反许可证,进行反向工程,引发冲突。
  • Linus在2005年4月6日宣布寻找BitKeeper的替代方案,开始寻找新的版本控制工具。
  • Linus的目标是在两周内找到可用的替代工具,避免下一个Linux内核发布受阻。
  • 经过讨论,Linus最终决定开发Git,目标是快速恢复补丁流程。
  • Git的初始版本更像是一个内容可寻址的文件系统,而非成熟的源代码控制系统。
  • Linus在四天内完成了Git的初步开发,主要关注数据结构的选择。
  • Git的诞生展示了许可证争议的升级和社区的持续努力。
  • 最终,BitMover于2016年开源了BitKeeper,标志着事件的一个转折点。
➡️

继续阅读