Code Review in Trac core
- #2035 requests Changeset commenting which would allow a rudimentary form of code review.
- Status: There has been no development on this specifically. Fundamental generalizations of the Trac core code may be required for an acceptable implementation in core Trac.
Trac Code Review Plugins
Overview
- Workflow:
- Allows creating reviews per changeset
- Reviews can be assigned to multiple reviewers
- Review status can be one of
- No need to review
- Awaiting review
- Undergoing review
- Completely reviewed
- Each reviewer gets one comment text field
- Features:
- A new main navigation tab to create and view reviews
- Permissions support
- Timeline integration
- Email notification support
- Implementation details:
- Uses a custom DB table for reviews and comments, and an second custom DB table to cache the path prefix of reviewed changesets
- Still uses ClearSilver templates
- Workflow:
- Allows creating reviews by selecting (line ranges in) files
- Reviews can be assigned to multiple reviewers
- Reviewers can vote for or against acceptance
- Reviewers can comment on specific lines of code
- Features:
- A new main navigation tab to create and view reviews
- Permissions support
- Timeline integration
- Implementation details:
- Uses four custom DB table for reviews, assigned reviewers, selected files and comments
- Templates were converted to Genshi in the 2.2 branch
- Workflow:
- Simply allows commenting on a changeset
- Changesets can be marked as accepted or rejected
- Features:
- Simple permissions support
- Implementation details:
- Uses a Genshi template stream filter to modify Trac's changeset page
- Uses a custom DB table for changeset comments
- (A simple hack is used to set it up lazily. There is no proper
IEnvironmentSetupContributor
implementation.)
- Workflow:
- Uses Gvn changebranches for reviews.
- (Gvn is a special Subversion client adding support for special code review branches, restricting this to Subversion repositories.)
Non-Trac Code Review Solutions
Note:
See
TracWiki
for help on using the wiki.