這隻螳螂(Mantis) 還挺猛的 — 免費好用的 Issue Tracking 工具

有些開發單位,並不想用需要付費的 Issue Tracking 工具,會問問我的意見,哪一套工具比較好用? 我是覺得用哪一套,都 OK 啦! 不過,我還是有用心地協助一些單位 Survey 了一下 Open Source 的 Solution。從 Google 爬文後,比較了幾套,包括 BugZilla, trac, Track+, JIRA(付費), RT(Request Tracker),都不錯用。不過,後來讓我比較感興趣的是這一套: 螳螂(Mantis)

螳螂(Mantis)的首頁畫面

使用這一套工具的原因是感覺它的可塑性與客製化程度挺高的,而且該專案持續開發與維護的積極度還蠻高的,才就昨天(4/4),又剛釋出了 1.07 的穩定版本。重要的是,它可以整合 dokuwiksubversion 。這挺重要的,尤其是 wiki 功能,使得 Issue Tracking 工具又同時可兼任 Portal,具有文件分享與基本留言討論的功能,讓溝通的機制更加地順暢。 蠻適合於中小專案的團隊,中的規模多大呢? 4,50 人以內吧,我的直覺是使用這套工具是綽綽有餘,沒有什麼問題的。不過,先說明一下,這只是個人的喜好罷了,我可無意陷入工具比較之爭,對於工具的使用,個人只有一個原則,好用就好,還有,真的有在用,這才是重要的。

我為什麼會欣賞這一隻螳螂? 官方網站列舉了一大堆的 Mantis Feature List 。幾個比較有意思的功能:

  • 容易安裝(這可重要)。
  • 多國語言支援,當然包括繁體中文介面。
  • 全文檢索與報表功能。
  • 版本控管(CVS and Subversiion) 與 wiki(dokuwiki) 的整合。
  • 權限驗證的支援(Defatlt, HTTP, LDAP, Active Directory service),不過,這塊可能要有相當的客製化技術能力才能整合得起來。
  • 提供 WebService(SOAP) 的溝通介面。
    這可真不錯,網站上還提供了 Eclipse, .Notifier, Ant Task 等 plug-in,當然,你也可以自行寫 .NET or Java 的 plug-in 外掛,彈性很大。

螳螂是一支利用 PHP 寫成的應用程式,基本上,要安裝 PHP 的應用程式,就是準備好三個基礎建設(Infrastructure)的應用伺服程式就對了。哪三個?MySQL, Apache2, PHP。PHP 與 MySQL,我都是採用最新 5.X 版,而 Apache,因為 Subversion 只支援 2.0.X 緣故,注意就不要安裝 2.2.X;至於作業系統,在 Linux or Windows 的平台上,安裝都很順暢,沒有什麼問題的。

安裝上是蠻簡單的,一下子就可以裝好了,稍微注意一下,我安裝的是 1.1.0a2 版本,安裝完後,雖然是支援 utf-8,但是檢視 MySQL 的資料庫,連線校對(collation)卻是被設成 Latin1,安裝完後中文寫入與顯示是沒有問題,但以我先前的經驗,利用 phpmyadmin 備份資料庫系統時,常會出現中文亂碼。所以最好一開始就改成 utf8_general_ci,那就完全沒有問題了! 如何改? 兩種方法,一種是先在資料庫系統建立好 Mantis 的資料庫,設定 utf-8 相關的參數,然後執行 Mantis 的 install script 即可;另一種是等完全安裝好後,備份 Mantis 的 SQL DDL 敘述,然後砍掉資料庫、重建、設定好 utf-8 相關參數。

再來就是安裝及設定與 dokuwiki 的整合。設定的目的只有一個,就是可以透過 Mantis 登入後達成 Single Sign-On,若你覺得 wiki 不需要權限控管,或者 wiki 另有帳號的獨立管理,那也沒有關係,不需要特別強調整合的。整合的步驟好像有些繁瑣,其實也還好,參考這一篇: Integrating DokuWiki with Mantis ,老老實實照這一篇的 how-to 設定就可以完成了。

設定好後,登入 Mantis 的主頁,然後透過 [wiki] 的鍊結,就可以連到 wiki for Mantis 的首頁。DokuWiki 真是小巧玲瓏,語法很容易上手,我是把它當成參考文件的儲存分享與 Issue Tracking 的 Portal,好用的不得了。

DokuWiki 的首頁畫面

我這裡目前還沒有設定與 Subversion 的整合,不過那也不是難事,爾後讓團隊成員可以在螳螂上看到 Subversion 所控管的文件與程式碼,有問題就紀錄下來、有想法或看到不錯的參考文件就寫到 wiki 上,不要把工具當作是一種負擔,也不用特意地去學習它。就是,只要知道,能夠促進團隊之間的溝通與分享,那就是好東西啦。

※ 延伸參考:
 o Mantis 的官方示範操作網站
 o 聊一下「版本控管」與 「Issue Tracking 」的專案開發機制

文章導覽

   

共有 17 則迴響

  1. 你好,
    最近的Mantis若有新增以及異動都不會發Mail通知(以前都會),但是我最近沒有更動設定,問了公司IT,他說也沒有檔信?請問我應該檢查哪些地方呢?

  2. 我試著裝mantis,己經裝好了,但發覺回報一個新問題並將問題指給一位成員,mantis並不會寄送mail通知該成員也,是少了那些設定是嗎?

    另外,我在建立一個帳號時,mantis會發信通知也,這樣表示mail通知的功能是設好了嗎?

  3. 請問一下, 這工具可以連結MS SQL 資料庫嗎? 需要修改什麼設定嗎?

  4. Mantis—免費好用的 Issue Tracking 工具
    有些開發單位,並不想用需要付費的 Issue Tracking 工具,會問問我的意見,哪一套工具比較好用? 我是覺得用哪一套,都 OK 啦! 不過,我還是有用心地協助一些單位 Survey 了一下 Open Source 的 S…

  5. 這隻螳螂超好用的。而且很穩定,我們公司使用一整年了,還沒出現問題,不過從你這兒看到可以Subversion 的整合的消息,很興奮的想試試如何整合,若有心得,在來這分享,感謝!

  6. Hi a01:
    不太清楚您的持續性整合的意思?
    我們在專案輔導期間,是一直對需求、Model與程式碼作持續性的一致性修正,此時,會透過如 EA 與 VS.NET or Eclipse 等 IDE 工具的整合。

  7. Issue Tracking工具 + CI工具 + IM工具 將會使的開發更有效率~
    我覺得以上3種工具的結合…應該也能出一套工具了..

  8. 你好,請問一下你第二張圖也是Mantis嗎?
    可是我在Mantis官網沒有看到耶!
    最近想找個工具可以把自己的工作計畫、進度及如何執行紀錄下來,不但可以當作工作計畫表,也可以做紀錄。
    請問你第二張圖也是使用Mantis嗎?
    謝謝!!

發佈回覆給「Kenming Wang」的留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *