歷史
Linux 與版本控制的需求
- 1991年:Linus Torvalds 創建了開源的 Linux 系統,迅速成為全球最大的伺服器系統軟體之一。
- 開源合作:Linux 的成長壯大依賴於全球志工的熱心參與,來自世界各地的志工持續為 Linux 編寫程式碼。
早期的管理方式
- 2002年以前:志工們透過
diff
產生的差異檔案將原始碼變更發給 Linus,再由他親自手工合併程式碼。 - 版本控制系統的選擇:雖然當時已有 CVS 和 SVN 等免費的版本控制系統,Linus 堅決反對使用,認為它們速度慢且必須連網,與 Linux 的開源需求不符。商業版本控制系統雖然功能更佳,但需要付費,同樣不符合開源精神。
選擇 BitKeeper
- 2002年:隨著 Linux 發展加速,程式碼量增加,手工合併難以維持,志工也對此不便表示不滿。於是,Linus 選擇了商業版本控制系統 BitKeeper,該系統的公司 BitMover 出於人道考量,免費授權 Linux 社群使用。
BitKeeper 使用權的失效
- 2005年:Linux 社群的開發者因探索 BitKeeper 的協議而導致 BitMover 收回免費使用權。
- 例如,Samba 的開發者 Andrew 和其他一些人嘗試破解 BitKeeper 的協議,這一行為被 BitMover 發現後,立即收回 Linux 社群的免費使用權。
Git 的誕生
- 開發新版本控制系統:Linux 對 BitMover 不願妥協,決定自行開發一套自有的版本控制系統。用兩週時間,以 C 語言編寫完成分散式版本控制系統 Git。
- 轉移至 Git:在短短一個月內,Linux 的原始碼全面轉移至 Git,從此 Git 成為 Linux 的版本管理工具。
Git 的普及
- Git 的快速成長:Git 迅速成為受歡迎的分散式版本控制系統,尤其是其速度、效率和彈性受到開發者廣泛認可。
- GitHub 的推出:2008年,GitHub 上線,為開源專案提供免費的 Git 儲存服務,促進了 Git 的普及。隨著 jQuery、PHP、Ruby 等知名開源專案遷移到 GitHub,Git 成為開源社群的標準工具。
Git 的出現,解決了 Linux 社群的管理需求,並成為現今開發者社群的主流工具,極大地推動了開源協作的發展。