實際上github之因此火這個故事,有幾種說法。其實Linus大神開發git並無多久,最初的階段,git只有linux的核心成員在用,並且因爲起古怪的邏輯和內在思想,讓人根本很難上手。並且即便今天我看到的狀況,也是不少人在把git當svn來用。實際上@範凱之因此會這麼說,也是由於他在寫這個東西的那一刻有些糊塗了。其實git做爲分佈式的代碼管理程序鼻祖,偏偏就是認爲存儲應該是分佈式的,是不要求有一個服務器的。而實際上最初的使用git的一種方式,是在造成發佈的版本後,在把代碼發佈到svn服務器上,對外發布出去的。而進一步說,github是一個代碼託管網站,而不是你的代碼存儲網站。另外說點題外話,更加有效的使用git這些軟件的方法,應該是直接的相護操做,而儘可能避免跟服務器打交道。只能在掉線將發生的時候纔去使用服務器。可是確實這樣做很古怪,並且管理起來比較繁瑣,權限更加難於實現,因此我看到的基本沒有這樣原教旨主義的。javascript
而因爲github的產生確實是由於ruby社區的貢獻。也就是在最初灣區的一些人,由於須要(固然我猜想也是由於太多的人看重了git的速度,而根本就沒有理解git的內涵,就如同如今一羣根本不懂agile的人每天教agile同樣)一個代碼託管的網站。而sf這個東西太面向用戶了,google code還不夠那麼cool,因而github就誕生了。可是請注意,最初的github僅僅是小衆的小衆,並且不溫不火的持續的一段時間。偏偏是在他們活得融資的先後,用戶數量纔開始爆發。這段時間內發生的事情纔是關鍵。也就是說git和ruby以及rails,都不是關鍵。java
在這段時間,有幾個關鍵的手段,一個是Pages,一個是權限,另一個是閉源的商業用途的實現。另外還有幾個關鍵的時間點,發生的關鍵性的一些事件,好比linux核心代碼等等。也就是說github團隊不只僅做對的事情,並且在關鍵時刻還抓住了時機做好了事情。特別是github遇上了javascript社區的爆發,這一點十分重要。固然由於對ruby的喜歡,許多人認爲是ruby社區的人引領了這個潮流。node
可是我不得不說,其實是node.js社區纔是領袖。固然我要在這裏澄清一點,我並不認爲我這裏是在誇hode.js,而偏偏我是要貶低他們。我認爲js這種語言,是一種混亂的語言,起社區也是混亂的社區,人員也是一羣混亂的人。固然這點確實跟rails社區開始階段很相似。而rails變爲merb以後,ruby社區已經沒那麼多噪音了。噪音多,紛爭就多,分支天然也就多,因而git天然就用途多了,github天然也就用的多了。注意,我這裏的意思是git和github是平行的,並無git多,致使github的多。人類的語言沒法表示並行,這裏就是如此。而github一下才就遇上兩次熱潮,rails和node.js,天然運氣也很好。linux
另外他們的Pages也非常合乎時機,至少在國內不少blog都轉到那裏去了。並且即便是非技術人員,不少人在用這個東西。這點在國內感覺應該很是明顯。這點無疑給他們又增長了不少用戶。git
同時另一個領域,也就是移動開發,由於最近這個比較熱門,收入也多,資金也多,吸引的關注也多。而偏偏從事這個方面的人員,也恰好不少是javascript社區的人,所以這樣的人天然也就多。github
注意我在這裏要強調一點,跟@範凱的邏輯相反,並非由於你用什麼東西,做什麼事情,因此你就是什麼人,而是由於自己你就是什麼人,纔會去用什麼東西,做什麼事情,而且會以什麼方式去做什麼事情。這個我跟他分歧的關鍵所在。ruby
而實際上對github的估值我以爲根本就不是問題,他們如今僅僅是活得了一筆投資,而不是被估值後賣出。也就是說他們僅僅是接受了1一個億的投資,而是他們如今就值那麼多。並且就我看來,凡是做SCM能成功的,價錢都不會過小,並且也基本都不會去接受什麼外部的投資,至於上市更加不可能。特別是可以提供雲計算配置管理工具的公司,更加沒有太多資金的須要。因此他們這麼快就接受了投資,我感受很奇怪。或者更加乾脆的說,他們接受了這筆投資,反而說明他們目前的情況沒那麼好。服務器
因此github走到如今的關鍵我看是下面幾條,第一不較真,非要原教旨;第二是及時與眼光;第三是運氣也足夠。分佈式
固然github的繁榮也有些須要認清楚狀況的,好比不少實際是做我的存儲的庫,好比我本身的配置文件就放在那裏,有些其餘的文件也存在那裏。我看這塊的東西,數量十分巨大。其次不少項目根本就是才起步,就結束的狀態。並且github目前項目的規模廣泛比較小,並且不少項目實質上就是一個項目。svn