聊聊Github的方法與哲學(xué)

開源已經(jīng)是一場(chǎng)革命盹憎,但是在開源的發(fā)展歷史上敦姻,其實(shí)依然在不斷的發(fā)展瘾境,甚至革命歧杏。簡(jiǎn)單的回顧一下:

最早的開源镰惦,僅僅是把自己的源代碼放出來(lái),或者讓別人用磁帶Copy帶走犬绒,或者放在Server上供人下載旺入。

再后來(lái),關(guān)于這個(gè)項(xiàng)目的代碼與功能凯力,就浮現(xiàn)出來(lái)了兩個(gè)問題:代碼大家都能改茵瘾,如何整理與匯總各自的工作成果?功能大家都有想法咐鹤,最后應(yīng)該做成什么樣拗秘?

于是,源代碼版本管理工具與各種在線討論的方式祈惶,開始了一輪又一輪的演進(jìn)雕旨。具體的項(xiàng)目就不再一一列舉,但是其中最大的一次創(chuàng)新捧请,就是從集中式版本管理凡涩,走向了分布式版本管理。如果說(shuō)Github有自己的哲學(xué)疹蛉,他的來(lái)源活箕,首先是分布式開發(fā)的理念。

分布式開發(fā)與分布式版本管理:沒有一個(gè)核心的版本庫(kù)可款,意味著沒有任何一個(gè)人育韩、任何一個(gè)組織是核心克蚂,每個(gè)人都可以在自己的機(jī)器上,保留全部的版本樹筋讨,并且不斷發(fā)展自己的版本陨舱。一個(gè)人的代碼,可以貢獻(xiàn)給A版仔,也可以貢獻(xiàn)給B游盲,一切自由。

隨著Linux開發(fā)的哲學(xué)蛮粮,被逐步的傳播開來(lái)益缎,才有了Github的出現(xiàn),最初的Github然想,最大的貢獻(xiàn)莺奔,是將這種無(wú)中心,多分支的開發(fā)模式变泄,Web化令哟、常態(tài)化了。一鍵就能夠fork自己的分支妨蛹,然后可以跟原有的分支毫無(wú)關(guān)聯(lián)屏富,也可以非常方便的提交pull request,這就帶來(lái)了更加頻繁的分裂蛙卤,使得分裂常態(tài)化了狠半。

原來(lái)的開源社區(qū),我改了代碼颤难,希望能夠貢獻(xiàn)給社區(qū)神年,需要穿越種種障礙,如果社區(qū)不接受行嗤,最后我只能逼不得已已日,自己開一個(gè)新的分支,變成一個(gè)新的項(xiàng)目栅屏。在分裂是異常的狀態(tài)下飘千,分裂是罪惡的,是不應(yīng)該的既琴,是會(huì)帶來(lái)陣痛的占婉。當(dāng)分裂變得常態(tài)化,pull request也變得常態(tài)化甫恩,分分合合逆济,以每天N次的速度發(fā)生,恰恰因?yàn)槿绱耍辉偈且环N罪惡奖慌,而是一種健康的抛虫、向上的、以更快速度進(jìn)步的模式简僧。大家不再是在一個(gè)版本下建椰,各自貢獻(xiàn),而是在各自的版本下岛马,獨(dú)立發(fā)展棉姐,想分就分蛇尚,想合就合蛇捌。

這背后折射出的哲學(xué),可以這樣總結(jié):如果將分裂視為罪惡尽纽,而力圖用各種方法去阻止夏志,總會(huì)碰到各種各樣的新的困難乃坤。如果反其道而行之,通過(guò)技術(shù)手段盡可能的方便分裂與合并沟蔑,這反而是滿足了真正的需求湿诊。(阻止分裂,其實(shí)是在壓抑開發(fā)過(guò)程中存在的真實(shí)需求)所以:盡力滿足真實(shí)的需求瘦材,才有可能獲得成功厅须。

隨著這樣的模式,變得常態(tài)化宇色,然后Github才被稱為一個(gè)社區(qū)九杂,fork/pull request颁湖,也從一種開發(fā)行為宣蠕,變成了一種社交行為。于是甥捺,程序員們發(fā)現(xiàn)抢蚀,最好的交流,正是通過(guò)源代碼來(lái)交流镰禾,一切的講道理皿曲,都不如用源代碼來(lái)講道理。這恰恰是程序員們最習(xí)慣吴侦,也最喜歡的一種交流方式屋休。這當(dāng)然也是因?yàn)闈M足了真實(shí)的需求。甚至我們可以說(shuō)备韧,Github創(chuàng)造了真實(shí)的需求劫樟。

隨后的事情,是順理成章的,程序員們泡在Github上叠艳,自然想在Github上做所有的事情奶陈,這卻不必再過(guò)多分析了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末附较,一起剝皮案震驚了整個(gè)濱河市吃粒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拒课,老刑警劉巖徐勃,帶你破解...
    沈念sama閱讀 219,039評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異早像,居然都是意外死亡疏旨,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門扎酷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)檐涝,“玉大人,你說(shuō)我怎么就攤上這事法挨∷瘢” “怎么了?”我有些...
    開封第一講書人閱讀 165,417評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵凡纳,是天一觀的道長(zhǎng)窃植。 經(jīng)常有香客問我,道長(zhǎng)荐糜,這世上最難降的妖魔是什么巷怜? 我笑而不...
    開封第一講書人閱讀 58,868評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮暴氏,結(jié)果婚禮上延塑,老公的妹妹穿的比我還像新娘。我一直安慰自己答渔,他們只是感情好关带,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著沼撕,像睡著了一般宋雏。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上务豺,一...
    開封第一講書人閱讀 51,692評(píng)論 1 305
  • 那天磨总,我揣著相機(jī)與錄音,去河邊找鬼笼沥。 笑死蚪燕,一個(gè)胖子當(dāng)著我的面吹牛招狸,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播邻薯,決...
    沈念sama閱讀 40,416評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼裙戏,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了厕诡?” 一聲冷哼從身側(cè)響起累榜,我...
    開封第一講書人閱讀 39,326評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎灵嫌,沒想到半個(gè)月后壹罚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,782評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡寿羞,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評(píng)論 3 337
  • 正文 我和宋清朗相戀三年猖凛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绪穆。...
    茶點(diǎn)故事閱讀 40,102評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡辨泳,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出玖院,到底是詐尸還是另有隱情菠红,我是刑警寧澤,帶...
    沈念sama閱讀 35,790評(píng)論 5 346
  • 正文 年R本政府宣布难菌,位于F島的核電站试溯,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏郊酒。R本人自食惡果不足惜遇绞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望燎窘。 院中可真熱鬧摹闽,春花似錦、人聲如沸荠耽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)铝量。三九已至,卻和暖如春银亲,著一層夾襖步出監(jiān)牢的瞬間慢叨,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工务蝠, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留拍谐,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,332評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像轩拨,于是被迫代替她去往敵國(guó)和親践瓷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容