代碼托管:新一輪的開源熱

jopen 12年前發布 | 11K 次閱讀 開源

源代碼往往是一家科技企業的核心競爭力所在。很多企業,如微軟,至今還選擇將核心源代碼抓在自己手里,將源代碼開放出去本身就是一項重大挑戰。

本刊記者豆瑞星

開發者辛辛苦苦開發出一套代碼,最后卻發現類似的代碼在開源社區就可以找到,開發者做了很多無用功。那么怎樣讓開發更有效率?組建一個代碼托管平臺,集中各種開源代碼,讓不同開發者之間可以分享代碼和交流經驗,無疑是最佳途徑。而這也是目前 GitHub 正在做的事。

GitHub 創立于 2008 年,面向企業用戶和個人開發者提供代碼托管服務,目前其注冊用戶數已經超過了 200 萬,托管的代碼庫則超過了 350 萬。包括 非死book、推ter、微軟、LinkedIn 以及 Mozilla 等都將其開源代碼托管于 GitHub。

對于那些主張開源的開發者來說,他們不僅可以利用 Github 將自己開發的應用放上去與其他開發者進行分享,同時還可以利用這個平臺獲得其他的開發“組件”,讓應用開發更加便捷。就像前微軟首席軟件架構師雷·奧茲 (Ray Ozzie)所說:“開發過程比以往任何時候都更加涉及‘組裝’了,因為在 GitHub 上或其它地方有很多組件,你可以非常快速地把它們組裝成一個有效的解決方案。”

據國外科技媒體 TechCrunch 報道,Andreessen Horowitz 風險投資公司正在對 GitHub 進行高達 1 億美元的投資,而此前該網站一直拒絕融資。融資報告中提到,融資之后 GitHub 的估值已達到 7.5 億美元之多。

新一輪的開源熱

GitHub 的火熱從側面反映了開源潮流的不可阻擋。據 Gartner 的研究報告指出,2011年,至少 80% 的商業軟件都包含大量的開源代碼,國外大型軟件巨頭,如 IBM、SUN、Dell、HP、Oracle 等已經開始支持開放源代碼,即使一貫以封閉著稱的微軟,也逐漸加入到開源的潮流中來。其推出的手機操作系統 Windows Phone8 本身即是一款開源的操作系統。

在開源與封閉的持久爭論中,開源正在占據上峰。

開源的優勢顯而易見,一款軟件在開發過程中,可以通過開源獲得更多開發者的支持,同時開發成功之后還可以將經驗分享出來,讓其他開發者受益。這種積極的協作模式要比一味封閉更具效率。

實際上,早在 1980 年,互聯網的先驅產品 Usenet 就倡導開源,而當時“互聯網”這個概念還沒有產生。軟件開發者可以通過 Usenet 實現合作,共同開發軟件。

到 1983 年,理查·斯托曼發起 GNU 計劃,目標是創建一套可以完全自由使用的操作系統,該計劃不僅采用了當時已可自由使用的軟件,還開發了一批自由軟件。GNU 計劃讓軟件界產生了“公共版權”的概念,讓開源理念深入人心。

不過當時 GNU 軟件還缺乏 OS (操作系統)的內核,并不完整,直到 1991 年 Linux 操作系統出來,GNU 軟件與之結合,史上第一款完全開源的操作系統終于誕生。

其后,開源塑造了紅帽、MySQL、Netscape 等眾多知名企業,可以說開源影響了整個軟件產業的發展。

如今智能手機廣為普及,APP 爆炸增長,大量個人開發者興起,移動互聯網時代全面到來。而開源,這一歷久彌新的理念,正在得到新一輪的激發和生長。代碼托管就是這一背景的產物。

在獲得融資后,Git Hub 公司 CEO 湯姆·普雷斯頓·沃納(Tom Preston Werner)表示,這些新注入的資金將用于雇用新員工,并用于擴展移動平臺。公司將會為 Git 研發新的功能,但是也會繼續投入精力改善現有的功能,比如給不同的操作系統提供 Web 應用程序。公司的目標是讓 GitHub 的客戶群更為廣泛——從個人黑客到大型企業,從軟件開發者到設計師或者作家。

不同于很多移動互聯網公司,GitHub 有著清晰的盈利模式:個人開發者每月支付 7 美元向其購買個人代碼托管服務,企業用戶購買帶有防火墻的企業代碼托管服務需每月支付最少 5000 美元。

其實國外還有其他類似的網站,如 GitCafe。國內也有 Geakit 等。谷歌也在經營類似的業務。不過谷歌作為巨頭,其業務范圍廣泛,產業鏈關系復雜,代碼托管由相對獨立的第三方組織來經營更加適合。

安全瓶頸

摩游世紀 CEO 宋嘯飛在看到 GitHub 的融資消息時,第一反應是代碼托管如何保證安全性?的確,安全問題一直與開源相伴隨,谷歌安卓操作系統依靠其開源模式贏得了廣大開發者的青睞,但是同時也誘發了大量病毒、木馬的誕生,那么 GitHub 們怎樣保證不被黑客攻擊?代碼不被不法人士利用?這確實是代碼托管面臨的一個瓶頸。

對于科技企業,特別是軟件企業來說,源代碼往往是一家企業的核心競爭力所在。很多企業,如微軟,至今還選擇將核心源代碼抓在自己手里,并依靠打擊盜版等方式實現更多的盈利。將源代碼開放出去本身就是一項重大挑戰。

即使金山衛士號稱開放源代碼,但是其安全核心層出于安全的考慮,不對公眾開放,僅對核心開發者開放,以防止金山十幾年積累下來的病毒對抗技術被病毒作者利用。

不僅企業擔心自己的源代碼被黑客利用,在訪問托管代碼之時,也面臨病毒的安全威脅。當用戶打開某個文件夾,可能病毒就悄然植入了。這些惡意代碼可能會損害甚至毀壞用戶的數據,還可能竊取用戶隱私。

開源理念的核心是無需授權,可以自由訪問,但是在這樣的前提下要做到絕對完全幾乎是不可能的。類似 GitHub 這樣的網站,必須對托管代碼進行嚴格的安全監測,同時對于可能的不法訪問者進行限制。

代碼托管網站還非常容易受到黑客的攻擊。今年 3 月份,GitHub 官方托管的 Ruby on Rails 代碼存儲庫和漏洞追蹤器被網站的一名用戶攻擊,該用戶的目的是向 GitHub 證實其安全上存有漏洞。GitHub 用不到一小時的時間修復了該漏洞,并暫時停用了 Homakov 的賬號以作調查,同時不得不向用戶保證“對 GitHub 代碼庫展開一次全面審核,以確保不會再出現類似的漏洞”,同時還要“確保能有一種長期性的策略防止此類漏洞重演。”不過 GitHub 的走火仍然呈現出另一種可能,即在嚴格的審核機制和健全的安全防護保障之下,代碼托管業務發展前景看好。

對于缺乏版權意識的中國開發者來說,代碼托管同樣是一種“偷懶”的好辦法。國內的跟風者已經出現,雖然還沒有做到 GitHub 這樣的規模,但這確實是一個機遇。

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