GitHub & Bitbucket & GitLab & Coding 的對(duì)比分析

目前基于 Git 做版本控制的代碼托管平臺(tái)有很多種僚焦,比較流行的服務(wù)有 Github雨女、Bitbucket谚攒、 GitLab、 Coding氛堕,他們各自有什么特點(diǎn)馏臭,個(gè)人使用者和開發(fā)團(tuán)隊(duì)又該如何選擇?

在這篇文章中讼稚,我們以客觀的態(tài)度括儒,以問題作為出發(fā)點(diǎn),介紹和比較 GitHub锐想、Bitbucket帮寻、GitLab、Coding 在基本功能赠摇,開源與協(xié)作固逗,免費(fèi)與付費(fèi)計(jì)劃,企業(yè)解決方案藕帜,集成 flow.ci 等方面烫罩,讓大家了解這四者不僅僅是功能不同。

GitHub 是第一個(gè)供“用Git進(jìn)行版本控制系統(tǒng)的軟件開發(fā)項(xiàng)目”使用的基于Web的代碼托管服務(wù)洽故,是目前全球最大的開源社交編程及代碼托管網(wǎng)站贝攒。GitHub 于 2008 年 4 月 10 日正式上線,除了基本的服務(wù)以外时甚,還提供了訂閱隘弊、討論組哈踱、文本渲染、在線文件編輯器梨熙、協(xié)作圖譜(報(bào)表)嚣鄙、代碼片段分享(Gist)等功能。


BitBucket 是 2008 年創(chuàng)建的源代碼托管網(wǎng)站串结,采用 Mercurial 和 Git 作為分布式版本控制系統(tǒng)哑子,同時(shí)提供免費(fèi)賬戶和商業(yè)計(jì)劃。2010 年被 Atlassian 收購(gòu)肌割,與 Atlassian 的其他服務(wù)(Git GUI SourceTree卧蜓、HipChat、Cloud9)順利集成把敞,主要面向慈善企業(yè)和企業(yè)用戶/其主要市場(chǎng)是大型企業(yè)弥奸。


GitLab 是一個(gè)利用 Ruby on Rails 開發(fā)的開源應(yīng)用程序,實(shí)現(xiàn)一個(gè)自托管的 Git 項(xiàng)目倉(cāng)庫(kù)奋早,可通過 Web 界面進(jìn)行訪問公開的或者私人項(xiàng)目盛霎。

Coding 是一個(gè)面向開發(fā)者的云端開發(fā)平臺(tái),目前提供代碼托管耽装,運(yùn)行空間愤炸,質(zhì)量控制,項(xiàng)目管理等功能掉奄。此外规个,還提供社會(huì)化協(xié)作功能,包含了社交元素姓建,方便開發(fā)者進(jìn)行技術(shù)討論和協(xié)作诞仓。2016 年 3 月 CODING 宣布收購(gòu)代碼托管平臺(tái) GitCafe。也許是目前國(guó)內(nèi)體驗(yàn)最接近 github 的產(chǎn)品速兔。

基本特征

關(guān)于這 4 大代碼托管服務(wù)平臺(tái)有著各自不同的功能墅拭,但也是有一些基礎(chǔ)特點(diǎn),比如:

  • 拉取請(qǐng)求
  • 代碼審查
  • 內(nèi)聯(lián)編輯
  • 問題跟蹤
  • Markdown支持
  • 雙向認(rèn)證
  • 高級(jí)權(quán)限管理
  • 托管的靜態(tài)網(wǎng)頁
  • 功能豐富的API
  • Fork / Clone Repositories
  • 代碼段
  • 第三方集成

欲了解更多的功能和細(xì)節(jié)涣狗,可以直接去 Bitbucket, GitHub, GitLab, Coding相關(guān)頁面了解谍婉。

哪個(gè)是開源的服務(wù)或產(chǎn)品

在這四家代碼托管服務(wù),只有 GitLab 有一個(gè)開源代碼版本屑柔。GitLab 社區(qū)版的源代碼也開放在他們的網(wǎng)站上屡萤。

GitHub 以開源友好而聞名,并且擁有最大數(shù)量(19.4M +)的開源項(xiàng)目但其本身不是開源的掸宛。

Bitbucket也不是開源的死陆,但在購(gòu)買托管服務(wù)的方案中提供了「產(chǎn)品定制」的功能。

Coding 同樣也不是開源的,不過 措译,9 月中旬 Coding 宣布開放 WebIDE 的源代碼别凤。

開源與協(xié)作,誰是最優(yōu)之選

GitHub领虹,GitLab规哪,Bitbucket 和 Coding 都具有「發(fā)現(xiàn)」功能。除了 GitLab塌衰,每個(gè)都提供了「follow」功能诉稍。Coding 允許開發(fā)者在個(gè)人配置文件中添加自定義標(biāo)簽,方便找到其他相同興趣的開發(fā)者最疆。

在協(xié)作上杯巨,GitHub 是開源協(xié)作方面的首當(dāng)其沖的選擇。目前 GitHub 擁有全世界最大數(shù)量的公共開源項(xiàng)目努酸,全球頂級(jí)科技公司( Google / Apple/ Facebook/ Twitter/ Microsoft/Alibaba/ Tencent)紛紛加入 GitHub 服爷,全球頂級(jí)開源項(xiàng)目(Linux/ Nodejs/ Swift/ Ruby / Docker)都優(yōu)先選擇在 GitHub 上開源,這里還有全球頂級(jí)編程大牛貢獻(xiàn)代碼获诈。這里不僅僅是專業(yè)開發(fā)人員的交友樂園仍源,也聚集了很多對(duì)軟件開發(fā)感興趣的人學(xué)習(xí)。甚至舔涎,一個(gè)活躍的 GitHub 賬號(hào)也能成為理想工作的敲門磚笼踩。

導(dǎo)入的代碼倉(cāng)庫(kù)類型

某種意義上,分布式版本控制系統(tǒng)決定了選擇哪個(gè)代碼存儲(chǔ)服務(wù)终抽,Bitbucket 在這方面脫穎而出戳表,因?yàn)檫@是唯一同時(shí)支持 Mercurial.

Coding桶至,GitHub 和 Bitbucket 支持導(dǎo)入基于多個(gè)不同 VCS 的 repos昼伴,而 GitLab 只支持 Git。

毫無疑問镣屹,Git 是目前最受歡迎的 VCS圃郊,但如果你正在使用 Mercurial 或 SVN 存儲(chǔ)庫(kù),那么遷移至 GitLab 可能會(huì)很復(fù)雜女蜈。GitLab 提供了簡(jiǎn)單方便的方式持舆,用于從 GitHub 或其他平臺(tái)上導(dǎo)入代碼倉(cāng)。

GitHub 支持:

  • 導(dǎo)入Git伪窖,SVN逸寓,HG,TFS.

GitLab 支持:

  • 導(dǎo)入Git.
  • 更容易從其他服務(wù)導(dǎo)入GitHub覆山,Bitbucket竹伸,Google code,F(xiàn)ogbugz。

Coding 支持:

  • 導(dǎo)入Git勋篓,SVN吧享,HG.

Bitbucket支持:

  • 導(dǎo)入Git,CodePlex譬嚣,Google Code钢颂,HG,SourceForge拜银,SVN殊鞭。

免費(fèi)計(jì)劃哪家強(qiáng)

這 4 家服務(wù)提供商都提供免費(fèi)計(jì)劃,但當(dāng)我們仔細(xì)深究時(shí)尼桶,他們有一些重大差異钱豁。比如:

GitHub 的 Free Plans 允許托管無限的公有代碼倉(cāng)庫(kù),隨時(shí)進(jìn)行clone, fork 和 contribute疯汁,對(duì)磁盤使用沒有限制牲尺。但是,項(xiàng)目不能超過 1 GB和單個(gè)文件不能超過 100 MB幌蚊。

Bitbucket 的 Small teams plan 允許 5 個(gè)成員加入谤碳,公有/私有倉(cāng)庫(kù)均免費(fèi)。當(dāng)項(xiàng)目大快到達(dá) 1GB 時(shí)溢豆,會(huì)有郵件通知蜒简。

GitLab 的 cloud-hosted plan 允許無限數(shù)量的用戶在無限數(shù)量的公共和私有項(xiàng)目上進(jìn)行協(xié)作,并且每個(gè)存儲(chǔ)庫(kù)有 10GB 的空間限制漩仙,看起來非常有誘惑力搓茬。

Coding 的免費(fèi)計(jì)劃允許 10 個(gè)成員在無限數(shù)量的公共和私有存儲(chǔ)庫(kù)上協(xié)作,但強(qiáng)加了 1 GB 的整體存儲(chǔ)限制队他。

由上面可以看到卷仑,GitLab社區(qū)版是唯一的自托管免費(fèi)計(jì)劃。如果你喜歡完全控制代碼庫(kù)并維護(hù)自己的服務(wù)器資源麸折,這絕對(duì)是最好的選擇锡凝。有一個(gè)缺點(diǎn)是它只提供社區(qū)支持和一些更高級(jí)的功能,也不提供代碼搜索垢啼。

誰的付費(fèi)云托管計(jì)劃更據(jù)優(yōu)勢(shì)

這四家的付費(fèi)云托管計(jì)劃都提供了無限數(shù)量的私人倉(cāng)庫(kù)和電子郵件支持窜锯。

GitHub的個(gè)人帳戶提供了和免費(fèi)帳戶基本相同的功能,可托管無限數(shù)量的私人倉(cāng)庫(kù)芭析。對(duì)于具有個(gè)人帳戶的用戶數(shù)量沒有限制锚扎,但是他們無法使用組織功能(例如,基于小組的訪問權(quán)限)馁启,并且結(jié)算是獨(dú)立完成的驾孔。GitHub組織計(jì)劃起價(jià)為 $25 /月,5 人,每個(gè)額外的用戶收費(fèi)為 $9 /月助币。

Bitbucket 云托管的成長(zhǎng)團(tuán)隊(duì)計(jì)劃包含 $10/10人/月 和 $100/月浪听,不限制團(tuán)隊(duì)成員的數(shù)量。

Coding 有 2 個(gè)付費(fèi)計(jì)劃眉菱,最多 20 人的開發(fā)計(jì)劃和 50 人的高級(jí)計(jì)劃迹栓。這兩種方案都可以托管無限數(shù)量的代碼庫(kù),存儲(chǔ)空間限制分別為 5 GB和 10 GB俭缓。值得一提的是克伊,Coding 在這方面的計(jì)費(fèi)選項(xiàng)更靈活,價(jià)格更具競(jìng)爭(zhēng)力华坦,也有更強(qiáng)大的技術(shù)支持愿吹,包括即時(shí)聊天和電話支持。

對(duì)比企業(yè)解決方案

比起 Cloud-Hosted Plans 惜姐,GitHub犁跪,GitLab 和 Bitbucket 的企業(yè)收費(fèi)版本提供了更加強(qiáng)大的功能,各自的網(wǎng)站上提供了相對(duì)完整的收費(fèi)表格歹袁,詳情查看在:

Coding 的企業(yè)版沒有透露任何定價(jià)和功能的細(xì)節(jié)坷衍。如果你正在考慮他們的解決方案,你需要聯(lián)系團(tuán)隊(duì)条舔。他們先評(píng)估需求枫耳,然后根據(jù)評(píng)估結(jié)果提供定制報(bào)價(jià)。

GitHub 的企業(yè)版起價(jià)為 $2500 /10人孟抗,每年計(jì)費(fèi)一次迁杨。除了部署自主服務(wù)器,GitHub Enterprise還可以部署到 AWS 和 Azure凄硼。

如果選擇 Bitbucket 铅协,只要 $10 /10人團(tuán)隊(duì),11-25人團(tuán)隊(duì)則要 1800$帆喇。對(duì)比來看 GitHub 看起來有點(diǎn)貴警医。 Bitbucket Enterprise 版本有 2000 個(gè)用戶的限制。如果你需要更多坯钦,可以去 Bitbucket Data Center 看看.

GitLab 企業(yè)版的收費(fèi)策略是每位用戶每年 39 $,對(duì)用戶數(shù)沒有限制侈玄。它比 Bitbucket 貴一點(diǎn)婉刀,同時(shí)如果使用一些額外的工具和服務(wù),價(jià)格也會(huì)上漲很多:

- 高級(jí)支持$ 99 /用戶/年(最少100個(gè)用戶)

- GitLab Geo $ 99 / user / year(no min users)

- Pivotal Tile $ 99 / user / year(no min users)

- 文件鎖$ 99 /用戶/年(無最小用戶)

集成 flow.ci

除了寫代碼序仙,我們還需要自動(dòng)化測(cè)試突颊,CodeReview 、CI 集成等來提升代碼的質(zhì)量。GitHub律秃,Bitbucket爬橡,GitLab和Coding 與 flow.ci 無縫連接,任意的代碼倉(cāng)庫(kù)關(guān)聯(lián)到 flow.ci 只需幾個(gè)步驟棒动。

總結(jié)

基于上面的介紹和比較糙申,如果還有不清楚的地方,還可以看下 stackshare 上的 GitHub vs. Bitbucket vs. GitLab 的對(duì)比分析.

對(duì)于這四大代碼倉(cāng)庫(kù)托管服務(wù)船惨,功能最強(qiáng)大的柜裸,性價(jià)比最高的,最受歡迎的都不是最好的粱锐。在特定情況下疙挺,在只有適合自己的才是最好的。那么通過這篇對(duì)比怜浅,我們也可以得到一些基礎(chǔ)的實(shí)際的結(jié)論:

  • 如果你想要一個(gè)免費(fèi)開源的解決方案铐然,GitLab 也許比較吸引人;

  • 如果你正在開發(fā)一個(gè)開源項(xiàng)目想取得更多的關(guān)注恶座,那 GitHub 毫無疑問是第一選擇锦爵;

  • 如果你想要免費(fèi)的私有庫(kù),并在使用 Atlassian 的其他產(chǎn)品(例如:Confluence奥裸,Jira险掀, SourceTree...),代碼托管在 Bitbucket 絕對(duì)用起來會(huì)很爽湾宙;

  • 如果你想要免費(fèi)私有代碼倉(cāng)庫(kù)樟氢,想獲得更多的中文支持或正在使用 Coding WebIDE,Coding 明顯更適合侠鳄。

如果這 4 個(gè)代碼托管服務(wù)都不是你所需要的埠啃,可以再看看國(guó)外的AssemblaCloudForge伟恶、gogs 碴开,國(guó)內(nèi)的 code.csdngit@osc博秫、集盒潦牛、TaoCode 等服務(wù)。如果你還有其他更好的補(bǔ)充挡育,歡迎留言巴碗。


flow.ci 是融入了 workflow 機(jī)制的持續(xù)集成(CI)服務(wù),也可以理解為自動(dòng)化流程平臺(tái)即寒,除了集成代碼橡淆、編譯召噩、測(cè)試之外,還可以集成常用的工具逸爵、靈活自定義流程具滴。1 分鐘即可完成開發(fā)測(cè)試環(huán)境搭建,開啟第一個(gè) Build师倔。

本文來自 flow.ci 官方博客构韵,轉(zhuǎn)載請(qǐng)聯(lián)系:)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市溯革,隨后出現(xiàn)的幾起案子贞绳,更是在濱河造成了極大的恐慌,老刑警劉巖致稀,帶你破解...
    沈念sama閱讀 206,602評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件冈闭,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡抖单,警方通過查閱死者的電腦和手機(jī)萎攒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來矛绘,“玉大人耍休,你說我怎么就攤上這事』醢” “怎么了羊精?”我有些...
    開封第一講書人閱讀 152,878評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)囚玫。 經(jīng)常有香客問我喧锦,道長(zhǎng),這世上最難降的妖魔是什么抓督? 我笑而不...
    開封第一講書人閱讀 55,306評(píng)論 1 279
  • 正文 為了忘掉前任燃少,我火速辦了婚禮,結(jié)果婚禮上铃在,老公的妹妹穿的比我還像新娘阵具。我一直安慰自己,他們只是感情好定铜,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,330評(píng)論 5 373
  • 文/花漫 我一把揭開白布阳液。 她就那樣靜靜地躺著,像睡著了一般宿稀。 火紅的嫁衣襯著肌膚如雪趁舀。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,071評(píng)論 1 285
  • 那天祝沸,我揣著相機(jī)與錄音矮烹,去河邊找鬼。 笑死罩锐,一個(gè)胖子當(dāng)著我的面吹牛奉狈,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播涩惑,決...
    沈念sama閱讀 38,382評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼仁期,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了竭恬?” 一聲冷哼從身側(cè)響起跛蛋,我...
    開封第一講書人閱讀 37,006評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎痊硕,沒想到半個(gè)月后赊级,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,512評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡岔绸,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,965評(píng)論 2 325
  • 正文 我和宋清朗相戀三年理逊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盒揉。...
    茶點(diǎn)故事閱讀 38,094評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡晋被,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出刚盈,到底是詐尸還是另有隱情羡洛,我是刑警寧澤,帶...
    沈念sama閱讀 33,732評(píng)論 4 323
  • 正文 年R本政府宣布藕漱,位于F島的核電站欲侮,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏谴分。R本人自食惡果不足惜锈麸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,283評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望牺蹄。 院中可真熱鬧忘伞,春花似錦、人聲如沸沙兰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鼎天。三九已至舀奶,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間斋射,已是汗流浹背育勺。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工但荤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人涧至。 一個(gè)月前我還...
    沈念sama閱讀 45,536評(píng)論 2 354
  • 正文 我出身青樓腹躁,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親南蓬。 傳聞我的和親對(duì)象是個(gè)殘疾皇子纺非,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,828評(píng)論 2 345

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