Effective version management

Version management is characterized by effectively tracking changes from their origin to the alteration to the project source code. Within a project, links between issues within the issue tracker (IssueZilla) and change records from the change control tool (CVS) are an effect means of managing your versions. Implementing a series of manual processes within your project will provide invaluable information throughout the life-cycle of your project. The manual process includes pasting links to CVS check-in messages in the IssueZilla issues, and supplementing these with adding the issue number to those CVS check-in messages. Further enhanced through the automatic messages generated by these two tools, the peer review process can help keep project members on track with this process.

Inherent to CVS is the ability to isolate code sets for unique development cycles. When a version is tagged an identifier is required within CVS. To better coordinate the version tracking process, the CVS version identifier should be identifiable within IssueZilla. By adding the CVS version to the IssueZilla database and requiring a version in issue creation the version tracking process can be greatly enhanced. This will allow you to easily identify the status of issues for a particular version and to run queries for all issues associated with a specific version.

IssueZilla and version management

The version number in IssueZilla allows you to track releases and versions of your project. When determining your version numbers it is recommended that you associate the version in your issue tracker with the tag numbers in your change manager, CVS. Associating the numbers between the two tools simplifies the process of correlating between issues in the issue tracker and changes made in CVS. As the project owner you can set a list of version numbers in the IssueZilla database and require the version number for all new issues. Users creating new issues must assign the version number in order to commit the issue. This is especially effective when running reports. Searching your IssueZilla database for all issues associated with a particular version number is as easy as defining a query. For more information, see Configuring IssueZilla's Administrative options.

Additionally, reports can be run through IssueZilla to track the progress of the version.

CVS and version management

Once you've got your issue tracker to mirror versions in CVS, you can further the change management process by requiring your members to add the issue number into any commit messages they create in CVS This can be done using several different manual process.

Ideally, all of these suggestions would be a regular part of your issue and commit processes.

Peer-review process and version management

When issues are created in IssueZilla an email is automatically sent to the announce mailing list. Posting links to the commit messages and/or a graphical representation of the diff statement in the IssueZilla issue provides a built in review process. Members of the project automatically receive the emails generated by IssueZilla and can review the issues for proper compliance with your processes and to ensure that enough relevant information has been provided. Further, when you're team is faced with similar issues finding historical information on how the issue was addressed in the past is as simple as either finding the IssueZilla number to access CVS change information or reviewing the commit messages to find the IssueZilla numbers.

Emails from CVS and IssueZilla commits are archived and searchable by Author, Subject, Date and Thread.

Using a combination of manual procedures as standard practices within your project can help you to maintain effective version management.