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