Git 系列之「Git 的誕生」
Linus 在 1991 年建立了開源的 Linux 系統。10 年後名揚天下,20 年後統治伺服器領域,可謂 Linux 恆久遠,Linus 永流傳。
雖然 Linus 建立了 Linux,但確是靠全世界熱心的志願者積極參與才使得 Linux 不斷壯大的。這麼龐大的工程是如何維護其原始碼的呢?
事實上在 1991-2002 年間,Linus 都是通過手工合併的方式維護程式碼。轉眼,來到了 2002 年,隨著原始碼飛速增長, Linus 已經疲於應付手工維護程式碼了,於是乎整個專案組開始啟用分散式版本控制系統 BitKeeper 來管理和維護程式碼。BitKeeper 的開發商是 BitMover ,BitMover 的創始人和 CEO 期望 BitKeeper 能幫助 Linus 免於陷入不斷加重的 Linux 核心管理工作中, 出於東方人道主義免費給 Linux 使用 BitKeeper 。
不過好事不長久,由於某些商業原因,2005 年開發 BitKeeper 的商業公司同 Linux 的合作關係結束,他們收回了免費使用 BitKeeper 的權力。這就迫使 Linus 不得不吸取教訓,只有開發一套屬於自己的版本控制系統才不至於重蹈覆轍。
週末 Linus 消失了,十天後,Git 問世了。今天,Git 已經成為上萬個專案的版本控制系統。
牛X就是這麼定義的,一言不合就自己造輪子。
相關文章
- Git 系列(二):初步瞭解 GitGit
- Git之"git diff"命令Git
- [Git系列] 前言Git
- git學習之git rebaseGit
- git 命令之git rebase 用法&git rebase介紹Git
- 【git學習五】git基礎之git分支Git
- Git使用系列03-->Git倉庫建立Git
- 前端綜合能力系列之git與gitflow前端Git
- Git 系列文章Git
- Git詳解之六:Git工具Git
- Git 系列(三):建立你的第一個 Git 倉庫Git
- Git 系列(五):三個 Git 圖形化工具Git
- git學習之git reflog和git cherry-pickGit
- Git基礎命令之git rebase命令Git
- Git詳解之五:分散式GitGit分散式
- Git詳解之七:自定義GitGit
- Git詳解之四:伺服器上的GitGit伺服器
- 【git學習二】git基礎之git管理本地專案Git
- git操作之四:git branch(本地倉庫)Git
- Git詳解之九:Git內部原理Git
- [Git] Git整理(四) git rebase 的使用Git
- 【git學習三】git基礎之git管理遠端倉庫Git
- 【git學習四】git基礎之git為專案打標籤Git
- git命令使用(必備系列)Git
- Git系列:常用命令Git
- 我的Git教程 之 解決 git clone後無程式碼Git
- git 乾貨系列:(六)公司內部搭建 git 伺服器Git伺服器
- git 乾貨系列:(一)我是小白,我想要搭建 git 倉庫Git
- Git 操作之rebase、squashGit
- 5、Git之版本號Git
- 7、Git之Github操作Github
- Git 系列教程(14)- 遠端分支Git
- Git 系列教程(7)- 撤銷操作Git
- Git 系列教程(9)- 打標籤Git
- 【Git 系列】基礎知識全集Git
- [Note] git清空.git目錄後,重新再git init & git remote的討論GitREM
- Lisp的誕生Lisp
- Git由淺入深之遠端主機(git remote)GitREM