由有一年沒有寫部落格了,一年前寫過一篇《小團隊開發管理工具:gitlab+redmine+testlink+jenkins》,通過在這一年的實踐(包括公司集中團隊和個人分布式團隊)中發現這套工具使用起來有不少問題。比如:因為使用git作為程式碼程式庫管理工具,對於程式碼程式庫的許可權控制就不是很好(這點和svn差別很大);這樣導致對同一個項目會使用多個版本庫,這就帶了多版本庫管理的問題,每次開發人員都需要在不同版本庫間切換,重複作者同樣的工作(pull, status, push, commit 等);對於代碼品質沒有更好的方式控制,只能靠我們的開發人員自覺等。最近重新整理和收集了關於專案管理工具方面的資源,重新規划了一套管理工具來解決項目中目前遇到的問題。但是不論工具多完善都是不能代替我們的人員的,工具只是協助我們更愉快的幹事情。相信大家在專案管理中也會遇到各種的問題,都有各種的解決方案,希望都能分享出來,讓我們的經驗的一傳承(說大了,不要噴太厲害)。
本文說明,本文不想太多介紹關於他們的安裝和配置過程,因為這些由於平台的不同安裝會有很大的差別,同時網上都能找到很多的安裝資料。但是會對部分的安裝和配置進行簡要說明或者給出可以找到安裝過程的地址。
首先說一下我自己總結的關於專案管理平台/工具需要解決的問題,同時我認為這些也是這套平台的理論支撐: 團隊人員管理 團隊任務分配 任務可跟蹤 代碼管理 代碼任務可跟蹤 代碼品質可視化 代碼品質可跟蹤 自動化任務管理 可持續整合 方便開發人員寫文檔 有助開發人員提高代碼品質
別扯蛋了,開始我們的工具集介紹吧
工具 |
職責 |
描述/注釋 |
git |
代碼管理用戶端工具 |
這個沒什麼說的,網上有個線上教程很好《pro git》 |
repo |
基於git的多程式碼程式庫管理工具 |
這個工具是google出的基於git的多專案管理工具,可以和gerrit很好結合 |
gerrit |
程式碼程式庫伺服器工具,代碼審核工具 |
基於git的線上代碼審查工具,圍繞它建立代碼審核平台和流程 |
gitlab |
代碼展示平台 |
gitlab這裡只做為我們的代碼展示平台和最終的發布程式碼程式庫 |
jenkins |
自動化平台,自動化測試和部署 |
jenkins自動化的測試/整合/發布,圍繞它建立可持續整合平台 |
redmine |
任務管理平台,缺陷跟蹤平台 |
這個網上介紹很多,沒有什麼可說的 |
sphinx |
文檔編寫工具 |
這個是用python寫的,用於編寫文檔的工具,一種即想即所得的工作方式,和win的即見即所的的發方式有很大不同。 外掛程式:plantUML、graphviz。這兩個外掛程式肯定會讓你寫設計文檔和介面文檔得心應手,當然是要一定的適應時間和過程的 |
sonar |
代碼品質報告彙總工具 |
圍繞它搭建一個代碼品質報告彙總平台 |
工具集的工作流程