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

主要观点

  • 2005 年 4 月 3 日,Linus 发布了 Linux 内核候选版本2.6.12 - rc2,这是最后一个非 Git 版本。
  • 此前十年,Linux 内核版本控制工具是 Linus 本人,后引入 BitKeeper,但引发了许可问题导致关系破裂。
  • Linus 因 BitKeeper 许可问题停止使用,两周内创建了 Git,起初 Git 更像内容寻址文件系统,主要目标是解决补丁流程问题。
  • 回顾这段历史,能看到未来的一些迹象,如当时讨论的 Web 界面和现在的网络文件系统,以及 Git 最初创建的原因在后来 Meta 迁移主仓库时重演。

关键信息

  • 2002 年 Linus 开始在 Linux 内核中使用 BitKeeper 引发争议,其许可限制引发众多开发者不满。
  • 2005 年 Andrew Tridgell 违反许可,Linus 试图调解无果,最终决定寻找替代方案。
  • Linus 在 4 月 6 日邮件宣布寻找替代工具,4 月 9 日开始全力投入,两周后 Git 诞生,最初 Git 功能有限。
  • 如今回顾,能看到当时讨论的一些想法在后来的技术发展中得到体现。

重要细节

  • BitKeeper 早期是商业闭源项目,其社区版许可限制引发争议,如 Richard Stallman 的批评。
  • Linus 最初使用 BitKeeper 是因为看重其工具性能,即使存在许可问题。
  • 在寻找替代方案过程中,讨论了多种开源工具,如 Monotone、GNU arch 等,主要考虑工具性能。
  • Linus 最初的 Git 更注重跟踪目录状态,而非完整的源控制管理系统,数据结构是其创新部分。
  • 当时讨论的一些问题,如 Web 界面、性能等,在后来的技术发展中具有重要意义,如 Google 和 Meta 的相关技术。
阅读 7
0 条评论