程序員必讀:七款出色的GitHub功能集成工具
譯文第三方集成方案為炙手可熱的存儲(chǔ)-托管網(wǎng)站帶來(lái)更多強(qiáng)大功能
開(kāi)發(fā)人員之選:七款***的GitHub工具
人氣代碼共享網(wǎng)站GitHub已經(jīng)成功吸引到全球無(wú)數(shù)用戶(hù)的目光,其代碼庫(kù)規(guī)模也保持著傲人的增速——當(dāng)然,隨之而來(lái)的則是滾滾不絕的支持與注資。除此之外,也有越來(lái)越多的第三方軟件與GitHub相對(duì)接、旨在為用戶(hù)提供從項(xiàng)目管理到持續(xù)集成再到PaaS云服務(wù)等多種功能拓展。
GitHub最近在網(wǎng)站的Integrations專(zhuān)欄中公布了合作關(guān)系的具體細(xì)節(jié),并表示將通過(guò)GitHub開(kāi)發(fā)者計(jì)劃吸引更多開(kāi)發(fā)人員為其貢獻(xiàn)集成方案。在今天的文章中,我們將介紹七款廣受好評(píng)的工具集成,了解它們?nèi)绾螏椭鶪itHub用戶(hù)在自己的開(kāi)發(fā)流程中實(shí)現(xiàn)價(jià)值提升。
Asana
Asana是一款項(xiàng)目管理工具,旨在以無(wú)需借助電子郵件的前提下幫助用戶(hù)實(shí)現(xiàn)團(tuán)隊(duì)合作。目前Asana提供Web應(yīng)用版本以及面向iOS與Android設(shè)備的移動(dòng)應(yīng)用版本。
Chartbeat公司工程技術(shù)副總裁Nathan Potter表示,Asana已經(jīng)在該公司內(nèi)部被廣泛用于任務(wù)管理工作。作為一家實(shí)時(shí)Web分析企業(yè),Chartbeat正是通過(guò)GitHub進(jìn)行代碼庫(kù)管理。“我曾經(jīng)在2012為參與到Asana-GitHub集成的編寫(xiě)工作當(dāng)中,”Potter回憶道。在GitHub開(kāi)源插件系統(tǒng)的支持下,這款集成方案正式上線啟用。當(dāng)代碼提交結(jié)果在GitHub上付諸運(yùn)行時(shí),Asana會(huì)為其創(chuàng)建一個(gè)任務(wù)ID、同時(shí)自動(dòng)配備一條指向提交內(nèi)容的鏈接。
CircleCI
CircleCI是一款面向Web開(kāi)發(fā)人員的持續(xù)集成與部署工具。Intercom公司CTO Ciaran Lee發(fā)現(xiàn),GitHub與CircleCI這一組合能夠幫助用戶(hù)顯著節(jié)約時(shí)間。作為一家專(zhuān)門(mén)為網(wǎng)絡(luò)企業(yè)提供客戶(hù)交流工具的廠商,Intercom公司將其代碼保存在GitHub當(dāng)中并通過(guò)CircleCI進(jìn)行代碼運(yùn)行測(cè)試。
“它每一天都能為我們節(jié)約數(shù)個(gè)小時(shí)的工作周期,”Lee表示。他同時(shí)補(bǔ)充稱(chēng),CircleCI與GitHub的協(xié)作幾乎完全以自動(dòng)化方式進(jìn)行。Lee在實(shí)際操作中感受到的惟一缺憾在于,同時(shí)在GitHub上使用CircleCI與Code Climate(一款代碼質(zhì)量分析工具)時(shí)會(huì)出現(xiàn)沖突。Intercom不得不在二者中選擇其一,但Lee相信GitHub正在著手修復(fù)這一問(wèn)題。
CloudBees
CloudBees是一套Java PaaS解決方案,它利用Jenkins持續(xù)集成機(jī)制幫助客戶(hù)更為快捷地交付更多軟件成果。作為一家為商業(yè)客戶(hù)提供峰值負(fù)載與能源傳輸信息的企業(yè),Viridity Energy公司利用CLoudBees進(jìn)行質(zhì)量保障測(cè)試、構(gòu)建生產(chǎn)環(huán)境并將其作為二進(jìn)制代碼存儲(chǔ)庫(kù),Viridity公司工程技術(shù)副總裁Duncan DeVore指出。在GitHub與CloudBees的集成協(xié)作下,該公司順利完成了模塊創(chuàng)建、分布式應(yīng)用程序開(kāi)發(fā)以及源代碼存儲(chǔ)外加問(wèn)題追蹤等工作。Viridity利用云模式取代了原有的內(nèi)部系統(tǒng)。
“我們選擇云模式的原因在于,我們希望能將自己的主要精力集中在創(chuàng)建業(yè)務(wù)軟件而非打理部署事務(wù)與解決故障難題身上,”DeVore解釋道。
Code Climate
Code Climate為Ruby on Rails以及JavaScript項(xiàng)目提供靜態(tài)分析功能。作為一項(xiàng)托管服務(wù),它所訪問(wèn)的代碼被保存在一臺(tái)GitHub服務(wù)器上,并通過(guò)互聯(lián)網(wǎng)進(jìn)行數(shù)據(jù)傳輸。眾包網(wǎng)站Kickstarter就使用Code Climate與GitHub集成方案進(jìn)行漏洞排查工作。
“當(dāng)我們將代碼提交至GitHub時(shí),Web觸發(fā)機(jī)制會(huì)自動(dòng)通知Code Climate并由其對(duì)變更內(nèi)容進(jìn)行分析,”Kickstarter網(wǎng)站運(yùn)營(yíng)工程師Aaron Suggs表示。“Code Climate的分析結(jié)果會(huì)以鏈接形式被納入我們的提取請(qǐng)求當(dāng)中。Code Climate還能通過(guò)電子郵件和我們的聊天室通知開(kāi)發(fā)人員嚴(yán)重事態(tài)的***進(jìn)展情況。”Kickstarter網(wǎng)站同時(shí)利用Code Climate的最近功能將評(píng)論反饋發(fā)送至GitHub提取請(qǐng)求當(dāng)中。
Pivotal Tracker
Pivotal Tracker是一款由Pivotal實(shí)驗(yàn)室開(kāi)發(fā)的敏捷項(xiàng)目管理工具。醫(yī)學(xué)雜志《Cureus》就在利用Pivotal Tracker與其GitHub代碼庫(kù)相結(jié)合以進(jìn)行任務(wù)管理工作。
“在代碼庫(kù)中的每一項(xiàng)提交內(nèi)容中,除了固有的Tracker故事ID與狀態(tài)之外,我們還額外添加了對(duì)應(yīng)提交者的身份驗(yàn)證信息,”《Cureus》雜志工程技術(shù)副總裁Chris Barretto指出。“當(dāng)提交內(nèi)容被推送至GitHub上的主分支中時(shí),背景故事將被更新至Tracker并作為***狀態(tài),同時(shí)故事評(píng)論也會(huì)被嵌入到GitHub提交結(jié)果當(dāng)中。”盡管對(duì)于Pivotal Tracker與GitHub集成方案的實(shí)際效果表示滿(mǎn)意,《Cureus》方面仍然提出了幾項(xiàng)改進(jìn)愿望,其中包括希望在Pivotal Tracker中為每個(gè)項(xiàng)目設(shè)置通知機(jī)制。
Travis CI
作為同時(shí)提供托管與防火墻后版本的解決方案,Travis CI是一款用于持續(xù)集成、部署與測(cè)試的工具。在線零售企業(yè)ModCloth公司一年前為了降低管理成本而利用Travis CI替代了原有Jenkins服務(wù)器,并在此后一直使用GitHub代碼庫(kù)。GitHub與Travis CI通過(guò)GitHub API實(shí)現(xiàn)對(duì)接,ModCloth公司高級(jí)軟件工程師Dan Buch表示。
盡管對(duì)GitHub的表現(xiàn)感到滿(mǎn)意,ModCloth方面仍然為該平臺(tái)提出了一系列改進(jìn)意見(jiàn),Buch指出。“他們的功能交付速度無(wú)法滿(mǎn)足我們的業(yè)務(wù)發(fā)展需求。”
TenXer
TenXer生產(chǎn)力分析工具旨在幫助工程師了解團(tuán)隊(duì)的服務(wù)使用情況(包括GitHub在內(nèi)),從而掌握對(duì)方的工作習(xí)慣。TenXer可通過(guò)標(biāo)準(zhǔn)GitHub API或者利用GitHub OAuth登陸TenXer的方式實(shí)現(xiàn)雙方集成,TenXer市場(chǎng)推廣官員JP Patil指出。
“對(duì)于GitHub Enterprise用戶(hù)來(lái)說(shuō),客戶(hù)需要在內(nèi)部防火墻之后安裝TenXer Agent。TenXer Agent利用同一API與GitHub Enterprise進(jìn)行通信,但能夠通過(guò)安全端口根據(jù)需求將數(shù)據(jù)推送至TenXer服務(wù)器當(dāng)中,”Patil指出。當(dāng)GitHub用戶(hù)為T(mén)enXer提供通過(guò)該API訪問(wèn)數(shù)據(jù)的必要權(quán)限時(shí),TenXer能夠追蹤一系列指標(biāo)與數(shù)據(jù)點(diǎn)、從而完成分析工作。
英文:http://www.infoworld.com/slideshow/147333/programmer-picks-7-great-github-integrations-239832#slide1