GitHub如何征服了Google、微軟及一切

jopen 9年前發布 | 11K 次閱讀 Github

原文  http://36kr.com/p/533581.html

Chris DiBona擔心所有的東西會在一個地方終結。

那是10年前,當時開源軟件的想法尚未把技術世界翻個底朝天。開源的Linux操作系統已經在華爾街等地的大量機器上運行,證明了通過與世界免 費共享軟件代碼一樣可以創造巨大價值和金錢。但是開源社區的力量仍然相對較小。碼農啟動新的開源項目時,往往要到一個相當geeky且有時不大可靠的網站 上,它的名字叫做SourceForge。

DiBona ,Google的開源大牛擔心把全世界所有的開源軟件都放到一個籃子上的風險:“只有一個籃子,那個籃子就是SourceForge”。

于是,像許多公司一樣,Google建立了自己的網站,讓大家來托管開源項目,這個網站的名字叫做Google Code。Linux等開源軟件是Google建立在線帝國的基石,Google提供一個SourceForce替代的想法是,確保開源教不斷演進,讓它 最終遍布全網。

不過這中間殺出了個GitHub,而它的傳播速度更快。

今天,也就是誕生10年后,Google宣布關閉Googe Code。這個決定并不難預料。過去3年Google已經將大概1000個項目移出了網站。不過它的正式死亡值得注意。Google Code之死跟大環境脫不開關系,因為現在勢力龐大的開源界大部分都把自己的代碼托管到GitHub上。

有人認為Google建Google Code可能有另外一個更加自私的想法:控制或者致力于把盡可能多的數據弄到它自己的機器上(這家公司一貫如此)。但GitHub最終體現出了比上述更高 的價值。GitHub以比SourceForge或Google Code更徹底的方式實現了軟件開發的民主化。而這就是軟件開發世界最有價值的貨幣。

GitHub:開發者的貓薄荷

上線僅7年的GitHub現在據稱已有將近900萬注冊用戶。每個月還有2000萬的訪客瀏覽。根據web流量監控服務Alexa的數據,GitHub位列全球百大流行網站之中。

可別小看GitHub的上榜,因為榜單上的其他網站不是社交網站就是Google在各國的局點,再就是媒體機構,主要用戶為碼農的GitHub是個異類。

不過,具有諷刺意味的是,GitHub的成功之處正好在于開源世界回歸到一個集中容器上。但這次DiBona的感覺跟大多數其他碼農一樣,對于 把所有東西都放到一個地方感到相當欣慰。集中到一個地方可以讓大家更容易就所有事情進開展協作。由于GitHub的獨特設計,把所有雞蛋放到一個籃子的壓 力并沒有像SourceForge那么大。

因為雖然GitHub在邏輯上是一個地方,但在物理上卻無所不在。這一悖論正是開源軟件的美麗之處—也是它對技術的未來很重要的原因。

Git Ready

如何解釋這一悖論呢?這得扯到Git,這個“版本控制”軟件是GitHub的基礎。Git是Linux創始人Linus Torvalds于2005開發出來的。Git的好處是可以讓許多人同時折騰一套代碼而不會發生沖突。Software traps write input/output (I/O) and then forward changes to replication targets.

或者說,Git的作用是讓任何人很容易就可以復制一份Linux源代碼到自己的機器上,進行變更,并可以在任何時候把變更上傳到中心版本庫上。 而且每個人的變更都可以無縫地合并到一起。“這就是Git天才的地方,” DiBona說:“而GitHub的天才指出在于它理解這一點。”

GitHub創建了這樣一個網站,這個網站讓任何其他項目基本都能像Linux項目一樣運作,使得一般編碼者都能輕松掌握。“GitHub的確 非常流暢,”經歷過這場開源革命的Slashdot主編Rob “CmdrTaco” Malda說:“它擁有一個性感且現代的界面。”

現在相當大部分的人都把自己的開源項目托管在GitHub上,其中就包括Google、非死book、推ter甚至還包括開源界一度 討厭的微軟。最近幾個月,微軟開始把自己部分最重要的代碼開源了,它把這些代碼托管在GitHub而不是自己的開源網站CodePlex。

S. “Soma” Somasegar,這位掌管微軟大量工具的老兵說CodePlex像SourceForge及BitBucket等庫一樣仍將繼續運營。但是他把 GitHub視為像Microsoft.NET這樣的項目的唯一托管地。“開發者在哪里我們就去哪里,”他說:“而大多數的開源社區都在GitHub 上。”

公私兼顧

盡管如此,正是由于DiBona所謂的“Git的天才之處”,這個社區也能脫離GitHub運營。由于有了Git,編碼者在做特定項目時不僅能 夠將代碼搬到自己的機器上,也很容易就能夠“fork(分支)”出代碼,然后建立新的獨立項目。他們還可以將部分代碼公開并讓一部分代碼保持私有。

所以Git和GitHub并不僅僅適用于開源軟件。也能用在私有代碼上。從私有到公有的轉換十分方便。你可以孤軍奮戰,也可以發揮集體的力量。這就是開源的天才之處。

Google就是這么干的。它的新一代語言Go就在GitHub上托管,且是徹底公開的。有個名為Kartes的項目放在GitHub私有庫上 面,但是這個又為另一個名為Kubernetes的公開項目提供資源。Chrome瀏覽器則托管在Google內部的一個私有Git服務上。

微軟這里系統也是基本一樣的運作方式。該公司內部通過Visual Studio及Team Foundation Server這樣的工具來使用Git。通過將Visual Studio及Team Foundation Server這樣的工具提供給世界,微軟也在將Git推給其他的業務。Somasegar估計約有20%的微軟客戶或多或少在使用Git。

開發者是人

此外,軟件開發者社區已不再渺小。他們現在幾乎就是掌控世界的人。對于GitHub擠進了前100,Doll認為:“這告訴我一點,即軟件正變得跟書面文字一樣重要。”

Google工程師Igor Minar說,開發者社區變得如此之龐大,以至于GitHub現在不得不努力提供可以適應其最大型項目活動的工具。Minar是開源項目Angular的監管人,這個托管在GitHub上的項目有上萬開發者參與。

開發者無所不在。其中許多都在GitHub上。而在GitHub上,他們正在為上千萬的開源項目作出貢獻。Minar把這個網站看作是某種集 市,上面幾乎有任何你想要的代碼—且大都是免費的。“想找東西上GitHub就可以了”。總之,開源以來到來。而這意味著我們最終可以比以前迅捷得多的方 式建設塑造和改善我們的世界。

有關GitHub的文章還可以參見:

開放的力量—破解GitHub的發展密碼

GitHub:互聯網上的創新中心

本文編譯自: wired.com

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!