CVSTrac Check-ins

A check-in (sometimes called a patchset or changeset) is simply a commit to the repository. It includes a message describing the change, a source code diff, and various information such as who made the change, when it was made.

CVSTrac attempts to represent a CVS commit as a single atomic operation (called a patch-set), even when the commit includes multiple directories. Other SCMs supported by CVSTrac would typically already represent commits atomically.

Check-in Features

Fields

Comment

A check-in comment is simply the contents of the CVS commit message. However, CVSTrac interprets such comments as wiki markup, allowing for a much richer presentation when reading change messages in a browser.

Check-in comments can be editted within CVSTrac (i.e. to fix an incorrect ticket number). However, any such changes are only help in the CVSTrac database and aren't visible in the repository itself. On the flip side, direct manipulation of the repository (such as with the cvs admin command) usually won't propogate to the CVSTrac database either.

Files

Each check-in has a list of associated files. Following each file will bring you the file history page.

Diffs

When viewing a check-in, a complete diff of the change is shown. The formatting of this diff may be enriched with custom filter.

Tickets

A check-in can be associated with a specific ticket by mentioning the ticket number in #n format inside the commit message. This allows development activity to be associated with a particular problem report.

Committing Changes

Changes are committed in the usual fashion (using a CVS command-line program). However, in order to maximize the grouping of commits within a single patchset, it's recommended that related commits be done all at once, with the same commit message.

Commits can be made using wiki markup. Commits made in relation to a specific ticket can be associated with that ticket simply by mentioning the ticket number. i.e.

  cvs commit -m "Fix for ticket #45" Makefile src/file.c include/header.h

Inspections

Inspections are short comments (40 chars) attached to check-ins. There's no limit to the number of inspections that can be associated with a check-in.

Patchsets

A patchset is basically a single diff of all the changes in a check-in. In theory, it's designed such that one can download it and recreate the changes using patch. In practice, this may not work well with binary files.