项目管理工具的选择,很是经过了一番挣扎。用过 Mantis, Trac。直到有朋友提到了 Redmine。
Mantis ?
技术上太陈旧了,没有版本库浏览,不支持 Web 2.0,界面陈旧,难以激发使用兴趣。
加之用 PHP 开发,代码难以维护。在二次开发中,难保在这里那里引入 Bug。
Trac?
技术上很好,用 Python 开发,整合了版本库浏览器,而且还通过维基技术将各个模块有机整合。但是最主要的缺点:
- 不支持多项目
- 项目要以多实例方式在命令行下创建,增加管理员负担
- 项目之间各自数据库独立无法关联,Ticket不能在项目之间进行复制或者移动...
Redmine 才是真正的项目管理软件的杀手级应用
- Trac 克隆。所有 Trac 有的,基本都在 ROR 框架下实现了
- 真正的多项目支持
- 虽然不支持一个项目和多个版本关联,但是可以通过建立子项目实现
- Web 2.0 技术
Redmine 的改进和增强
但是 Redmine 也有遗憾:
- 版本库没有精细权限控制,只能存在非0即1的权限控制
- Git 版本库支持不好,在 0.9.0 解决了这个问题
- Hg 版本库支持存在问题
- 基于 textile 的维基语法非常古怪,对于使用 Trac 语法已经习惯的用户非常的别扭
开源软件的本质,让我们可以自己上手来完善它。
在使用 redmine 的过程中,我们解决了这些问题,并在很多方面加以完善。可以在
群英汇项目管理首页 看到我们的改进。相关代码提交也可以在群英汇的网站上找到。
例如对于 Subversion 授权的改进,参见:
对于 Redmine 您有什么改进建议和好的补丁,一起到 github 上分享。