Welcome to the CodeReview documentation !

images/code-review-log.png

Log Browser

images/code-review-diff.png

Diff Viewer

Introduction

I code using the venerable Emacs editor and the extension Magit which is a powerfull text-based user interface to Git. Despite, I am happy with Magit for most tasks, I dislike the diff view rendering in Emacs.

Thus the goal of CodeReview is to provide a more convenient tool for code review tasks on local Git repositories. Unlike software like Gerrit, CodeReview is not designed to do team-level code review, but to check the stage before a commit and show the difference between two versions. In particular, CodeReview fills the gap with IDEs that don’t provide a nice side-by-side diff view.

Historically, I wrote this tool as a replacement of qbzr for Git.

How to use CodeReview ?

CodeReview provides two applications pyqgit and diff-viewer.

Disclaimer

This tool was written 10 years ago (late 2011) and I am using it for my own needs, thus it works as is.

I tried to implement a file watching feature but it is a nightmare to debug.

The Qt code is now a bit out dated, but the actual diff viewer implementation would require some works to be ported to QML.

Features

The main features of CodeReview are:

  • display and browse the log and paches of a Git repository

  • diff side by side using Patience algorithm

  • watch for file system changes

Diff viewer features:

  • stage/unstage file

  • number of context lines

  • font size

  • line number mode

  • align mode

  • complete mode

  • highlight mode