I happened to find the redmine as a best open source project for Project management. The reasons being its simpleness and customization options. I am not going to go through the installation steps rather important features which I like,
- Nested tickets
- VCS Association
- Adding new tracker and status
- User management
Every notification can be configured according to the individual preferences.
Excellent way to achieve the milestone based project delivery. You first need to create list of versions by following, Project page -> Settings -> Versions then add new versions with necessary fields shown below.
The date field is indicates the deadline date of the version. You can associate the created version with tickets.
You can have a glimpse at the following image to understand the ticket creation screen in redmine.
We can have parent ticket for any ticket, which gives options to further group the ticket of similar nature.
The most exciting feature of redmine is the its seamless integration with Version Control System. We use git and redmine has really made our work effortless. Go to Project -> Settings -> Repository page and choose the type and give the local path. By default git commit can be linked with the Redmine ticket by specifying,
"this is a test commit refs #12"
This commit will be linked with the ticket number 12. The beauty is, you can view the changes made in the particular commit from the ticket,
The more options are there, Admin -> Settings -> Repositories
Where you can change the keyword used. You can even close any ticket(s) using fixes/closes keywords. If you had enabled "Enable time logging", you can log time from commit message !
eg: "Again a test commit refs #30 @1h15m" Meaning 1 hour and 15 minutes. By default redmine may not necessarily run the cron to associate to commit message to ticket. You can create a git hook to run it on every new push.
Adding new tracker and status
Admin -> Settings -> Trackers to add new tracker.
Admin -> Settings -> Issues statuses to add new status.
Workflow allows to constraint the transition of the ticket statuses. Admin -> Settings -> workflow
In the picture above, The new status can be escalated to 'In Progress' or 'Resolved' but not to 'Deferred'.
Each project can have exclusive user management rights. A member can be Manager in a project but in other he could be just a tester. Project -> Settings -> Members to add/remove members.