QuickRevBoard |
.quickRev/history
in the user's home directory during normal QuickRev usage.
If the history-DB is set up already nothing else has to be done. But sometimes it is necessary to create a completely new
history-DB for creation of the QuickRevBoard. For doing this use QuickRev --history
to create (or update) a history-DB.
java -jar QuickRev --history --help
will show you all possible options. For creation of the history-DB and the
QuickRevBoard --db-dir
might be used the specify a different location of the history-DB.
Syntax
USAGE: java -jar QuickRev.jar --board [OPTIONS] OPTIONS: [-h|--help] Prints this help. [--db-dir <db-dir>] Defines the directory where the history-DB is stored. If this option is omitted the database will be searched in '~/.quickRev/history'. [--vcs=<svn|git|cc>] Defines the used version control system. Either 'svn' for SVN, 'git' for GIT and 'cc' for ClearCase can be used. If this parameter is not given 'svn' is used as default. [--vcs-command <command>] Per default the commands 'svn' for SVN, 'git' for GIT and 'cleartool' for ClearCase are used. A different command can be specified here which is helpful if the default command cannot be found via the default search path. Furthermore it is possible to add additional options (e.g. username / password / etc.) to the command. Note: if additional arguments are given (or the path contains spaces) the command has to be quoted. [--start-dir <start-dir...>] Defines the start directories to search for files to be shown in the review history. [--exclude <path-pattern...>] Excludes paths (directories and files) which contain one of the regular expressions from search. Only the part behind the given start directory will be checked for a match. (increases search performance) [--exclude-file <paths-file>] Excludes paths which contain one of the regular expressions specified in the given file from search. Every regular expression has to be defined in a new line. [--include <path-pattern...>] Includes paths (directories and files) which contain one of the regular expressions in the final result set. Only the part behind the given start directory will be checked for a match. '--exclude' takes preference over '--include', so all paths which are excluded cannot be included via this option. If this option is given only paths will be included in the final result set which match one of the given include pattern. Includes are checked when the whole path to a file is available, while excludes are checked already during traversal through the directory structure. So using '--exclude' might be faster if whole directories can be excluded. [--include-file <paths-file>] Includes paths which contain one of the regular expressions specified in the given file in the final result set. Every regular expression has to be defined in a new line. -o|--out-dir <output-directory> Specifies the output directory where the output files have to be stored. [--replace-path <replace-from, replace-to>] Replacement of the paths to the project files or even the files to be reviewed. This option can be used to replace local paths with remote ones in the generated output files. If the option is given more than once the replacement which matches first will be used. [--replace-vcs-path <local-path, original-path>] Replaces the path of the read files under version control with a different one to fit to the path used in the project files. This can be useful for subversion mirrors or for ClearCase if the directories are mounted to different drives or locations. When creating review history for large subversion repositories the process can be increased dramatically by creating a local mirror of the svn repository and creating the QuickRevBoard based on the local mirror. One possibility is to use 'svnsync' here. Since the path of the files read from the mirrored repository does not fit to the original one the reviews cannot be assigned to the files. So this options allows to specify the path of the local mirror and replace it with the original path. Note: This options might work for other mirrors (like 'svk') as well, but is tested only for 'svnsync'. So try out for other mirrors - and please let me know whether it worked. [--file-version-separator <separator>] To access different versions of a file directly a link to every version will be created in the following form: for Subversion: path-to-file?p=version (e.g. http://path/example.java?p=123) for ClearCase : path-to-file@@version (e.g. http://path/example.java@@/main/4) Make use of this option to define a different separator between 'path-to-file' and 'version'. [--json-only] Specify this option to generate the 'json' files only and omit all stylesheet, html, image, and other visualisation related files. So only the data structure will be generated and you can use your own visualisation, evaluation or whatever tools. [--no-tasks] Specify this options to suppress generation of the task list. [--no-history] Specify this options to suppress generation of the files review history. [--title <title>] Adds a title to the generated QuickRevBoard. [--baseline <number/label/tag>] Defines a revision number / label / tag which will be used as baseline. I.e. all file versions which are older or equal to the given number will be regarded as 'reviewed'. This option is available for the following version control systems: SVN / ClearCase. [--baseline-time <yyyy-MM-dd/hh:mm:ss>] Defines a time point which will be used as baseline. I.e. all file versions which are older or equal to the given time point will be regarded as 'reviewed'. This option is available for all version control systems. [--exact-baseline] Add this parameter to apply the baseline settings to a file only, if the latest known version is covered by the baseline. In case there are already newer versions ignore the baseline for this file. [--threads=<value>] Changes the number of threads to determine the file history. To increase the performance try different values. If this option is not given the number of processors is used as default. [-c|--config <config-file...>] Make use of this option to load the same configuration files as for normal QuickRev usage. [--plugin <plugin-path...>] Make use of this option to load the same plugin files as for normal QuickRev usage. [--git-log-follow] Uses 'git log --follow' for determination of file history (this is the default). [--git-log-follow-m] Uses 'git log --follow -m' for determination of file history. [--git-log-m] Uses 'git log -m' for determination of file history. [--auto-gen-reviews] Depending on the used git log options (default '--follow') the history of a file after renaming the file is shown or not. This can lead to situations, where a review made for a file before renaming the file cannot be assigned to the file anymore. If, for showing the review history (or generation of the QuickRevBoard), a review was found, where the latest known commit of a file is part of the file history, but the base version is not part of the file history anymore, QuickRev searches for other reviews where the SHA1 hash of the latest review version is the same as the former base version, this is done until a 'full' review was found - so the initial review version can be marked as 'completely' reviewed. [--debug[:<WARNING|INFO|CONFIG|FINE|FINER|FINEST|ALL>]] This option is useful in case of errors to get additional information. Assign a log-level in the form "--debug:ALL" to print logging information of the given level to standard error. The following log-levels are available: SEVERE (highest value), WARNING, INFO, CONFIG, FINE, FINER, FINEST (lowest value), ALL. (See java.util.logging.Level for more information)
Example Usage
Example 1
QuickRev --board --out-dir /tmp/my-qr_board/ --start-dir /home/dev
Creates the QuickRevBoard for the files found recursively starting at /home/dev
and writes the results to /tmp/my-qr_board/
. This command uses the history-DB
stored in the QuickRev's home directory during normal QuickRev usage.
It's the most simple usage of the QuickRevBoard.
Example 2
(1) QuickRev --history --db-dir /tmp/my-qr_board/ --find /home/dev --exclude /test/ /doc/ .svn/
(2) QuickRev --board --db-dir /tmp/my-qr_board/ --out-dir /tmp/my-qr_board/ --vcs=svn --start-dir /home/dev
--exclude /test/ /doc/ .svn/ /review/ --include .java$ .xml$
--replace-path /home/dev http://my/remote/path
Here QuickRev is started twice, once to create the history-DB and afterwards to create the QuickRevBoard.
(1) creates the history-DB in /tmp/my-qr_board
directory and searches recursively for project files
starting in /home/dev
. test
, doc
and .svn
directories will be ignored during the search.
The command can be executed even if the history-DB exists already, in this case it will be updated (which
is faster than the initial creation). See QuickRev --history --help
for all options to create the history-DB.
(2) creates the QuickRevBoard with the history-DB stored in /tmp/my-qr_board
directory. The result will
be written to the same directory like the history-DB. Subversion is used as version control system (which is
the default). The files to be reviewed will be searched recursively starting in /home/dev
. test
, doc
, .svn
and review
directories will be ignored and only files which end with .java
or .xml
will be taken into account.
The local path to the project files will be replaced from /home/dev
to http://my/remote/path
to be accessed
on a remote location afterwards.