Inspired by the recent change log of nginx, a HTTP and reverse proxy server . We have standardized on a common format for all commit messages to our Subversion repository. All commit messages are prefixed by these keywords:
- Change : If we modify the default behaviour of the system
- Feature : Add new stuff to the code base
- Bugfix : Fix existing issues with ticket id or example
Also, the title of our todo items or user stories (if you like to call it that way) also follow the same naming convention. Just for the sake of consistency. Why? To help us summarise and create weekly changelog in a readable and consistent format easily.
Unfortunately, we're still stuck in the Subversion mindset and can't commit and merge as often as we like like the other Distributed Version Control System (DVCS) like Git or Mercurial. Actually you can, just create a feature branch and commit as often to it and summarize your changes during merging.
Next steps ? Increase the test coverage and improve the schedule estimation.