Provided by: analizo_1.25.4-2_all bug

NAME

       analizo-metrics-history - processes a Git repository collection metrics

USAGE

         analizo metrics-history [OPTIONS] [<input>]

DESCRIPTION

       Processes a Git repository collection metrics for every single revision.

       analizo metrics-history will process input, a Git repository with a working copy of the
       source code (i.e. not a bare git repository), checkout every relevant commit and run
       analizo metrics on it. The metrics for all of the revisions will be accumulated in a file
       called metrics.csv inside input. If input is omitted, the current directory (.) s assumed.

       analizo metrics-history is part of the analizo suite.

RELEVANT COMMITS

       analizo metrics-history considers as relevant the commits that changed at least one source
       code file. Consequently, it skips all the commits where no source code file was changed,
       such as documentation, translations, build system changes, etc.

       Currently we support C, C++, Java and C# projects, and therefore files considered source
       code are the ones terminated in .c, .h, .cpp, .cxx, .cc, .hh, .hpp, .java and .cs.

OPTIONS

       --parallel N, -p N
           Activates support for parallel processing, using N concurrent worker processes.
           Usually you will want N to be less than or equal to the number of CPUs in your
           machine.

           Note that analizo metrics extraction is a CPU-intensive process, so setting N as the
           exactly number of CPUs you have may bring your machine to an unusable state.

       --language LANGUAGE, --exclude DIRECTORY
           Use programming language and directory exclusion filters. See analizo-metrics(1) for a
           description of these options.

       --output <file>, -o <file>
           Make the output be written to file. The default value and valid values depend on the
           output format, see "Output formats" below.

       --format FORMAT, -f FORMAT
           Specifies with output driver, and consequently the output format, to use. See "Output
           Formats" below for a description of the available output drivers.

       --list, -l
           Instead of actually processing the history, just print out the ids of the commits that
           would be processed.

       --progressbar, -b
           Displays a progress bar during the execution, so that you know approximately how long
           analizo is going to take to finish.

Output formats

       Using the --format option, you can use the following output drivers:

   csv
       This is the default output driver. By default, the output will be written to the standard
       output. If can direct the output to a file using the --output option.

   db
       Stores the extracted data in a relational database.

       When you use this driver, you can specify where exactly to store the data using the
       --output option. If you do not specify an explicit target, analizo will write to a SQLite
       database in a file called output.sqlite3 in the current directory. If you pass a filename,
       and analizo will store the data in a SQLite database that will be created on that file.
       You can direct the output to any other database by using --output DSN, where DSN is a DBI
       Data Source Name.

       You can check DBI(3pm) for details. Note that if you a database other than SQLite, you
       must make sure that you have the corresponding DBI driver installed.

       Examples:

       $ analizo metrics-history -f db -o history.db

       Writes the output to a SQLite database called history.db.

       $ analizo metrics-history -f db -o 'dbi:Pg:dbname=pgdb'

       Writes the data to a PostgreSQL database called pgdb. This requires the DBI::Pg Perl
       module.

       analizo was not tested with MySQL yet.

SEE ALSO

       analizo-metrics(1)

COPYRIGHT AND AUTHORS

       See analizo(1).