Man Linux: Main Page and Category List

NAME

       statsvn - SVN repository statistic analysis tool

SYNOPSIS

       svn log --xml -v path/to/repos > svn-logfile.xml

       statsvn [options] svn-logfile path/to/repos

DESCRIPTION

       This  manual  page documents the statsvn command.  This manual page was
       written for the Debian distribution because the original  program  does
       not have a manual page.

       statsvn  is  a program that retrieves information from a SVN repository
       and  generates  various  tables  and  charts  describing  the   project
       development,  e.g. timeline for the lines of code, contribution of each
       developer, etc.

       The current version  of  statsvn  generates  a  static  suite  of  HTML
       documents  containing tables and chart images.  statsvn is opens source
       software, released under the terms oft the LGPL.  statsvn is  based  on
       statcvs(1)  (hence the striking similarity between their interfaces and
       manual pages) and uses JFreeChart to generate charts.

       svn-log-file
              path to the output of svn log --xml -v for the given repository.
              IMPORTANT  NOTE:  do not forget the -v option, else statsvn will
              crash !!!

       path/to/repos
              path to a checkout of the repository.

OPTIONS

       These programs follow the usual command line syntax, with long  options
       starting  with  one  dash  ("-").  A list of common options is included
       below.  For more up-to-date information, see statsvn’s website.

   General Options
       -output-dir <directory>
              Specify an output directory. The reports will  be  generated  in
              this  directory.  The  directory  will  be created if it doesn’t
              exist.

       -include <include-pattern-list>

       -exclude <exclude-pattern-list>
              Specify filters to exclude files from the analysis. A file  will
              be  ignored  if it doesn’t match any of the patterns in include-
              pattern-list, or if it matches any pattern  in  exclude-pattern-
              list.

              The  patterns  are  lists of Apache Ant-style wildcard patterns,
              seperated by colons or semicolons. The wildcards are:

                      * ’?’ matches a single character
                      * ’*’ matches zero or more characters
                      * ’**’ matches zero or more directories

              For example, src/**/*.java matches all java  files  in  the  src
              directory  or  its subdirectories. Note that *.java only matches
              java files in the root directory, because  ’*’  does  not  match
              subdirectories.

              One more example:

              -include **/*.c:**/*.h -exclude legacy/**

              This  matches all .c and .h files anywhere in the directory tree
              except those in the legacy directory and its subdirectories.

              For  more  information  on  Ant’s  wildcard  syntax,   see   the
              Patternset section of the Ant manual.

              If  not  specified, all files will be included and no files will
              be excluded.

              Note: Unix users must put the patterns in quotes, or  the  shell
              will interfere with the wildcards.

       -cache-dir <directory>
              Specify  a  cache  directory  for information retrieved from the
              Subversion server (e.g. line counts). The data will be saved  in
              this  directory.  The  directory  will  be created if it doesn’t
              exist. By default, the current user directory is used.

       -username <subversion_username>

              Specify a username to use  when  connecting  to  the  Subversion
              server.

       -password <subversion_username>
              Specify  a  password  to  use  when connecting to the Subversion
              server.

       -tags <tags-regularexpression>

              Includes information about Subverison  tags  into  the  reports.
              Only  tags  matching  the  regular  expression  are included. To
              include all tags, add -tags ’.*’ to the command line.

              Note:  Unix users must put the  expression  in  quotes,  or  the
              shell will interfere with the wildcards.

              Note:  Tags are determined by looking at your repository’s /tags
              directory. To be able to use this feature, you must generate the
              log  file  from  the  root  of  your repository, so that the log
              contains information from both the /tags  and  the  /trunk.  The
              checked out version does not have to contain the tags directory.

       -tags-dir <directory>

              Specifies  the  root  directory  from  which  the  tags  regular
              expression is evaluated. The default -tags-dir is /tags/

       -no-developer <login-name>
              Excludes  a  Subversion account name from all developer reports.
              This is useful to reduce noise  from  administrative  and  other
              non-developer  accounts.  Multiple  accounts  can be excluded by
              adding the option to the command line once for each account.

   Report Options
       -xdoc  Generate Maven XDoc instead of HTML. This allows Maven and Maven
              2  to integrate the reports when it generates the projects Maven
              site.   Reports   could   be   placed,   for    example,    into
              src/site/statsvn.

       -xml   Generate XML instead of HTML.

       -css <stylesheet>
              Optional  (default varies for html or xdoc). Specify a Cascading
              Style Sheet for the report. This can be a HTTP URL  or  a  local
              file. A URL will simply be linked in every page of the report. A
              local file will be copied into the report directory.

       -notes <notes-file>
              The contents of the specified file will be included at  the  top
              of  the  report’s  index  page.  The file should contain a valid
              block-level HTML fragment, for example:

                  <p>
                    These are development statistics for the
                    <a href="http://www.statsvn.org">StatSVN</a>
                    project, created by StatSVN itself.
                  </p>
                  <p>
                    <strong>Note:</strong>
                    This report was generated by an unreleased
                    development version of StatSVN. It might
                    contain features not yet found in the
                    official release.
                  </p>

       -title <title>
              Specifies a display title to be used in the reports. The name of
              the  Subversion  module  will  be used as default if no title is
              specified.

       -config-file <path-to-properties-file>
              Allows one to replace the  source  control  username  with  more
              information  such  as real name, website, email and avatar icon.
              See this file for an example.

       -charset <charSet>
              Specifies the charset to use in HTML or XDOC output.  ISO-8859-1
              will be used as default if no charset is specified.

       -disable-twitter-button
              if  present,  exclude  the Twitter "Tweet This" buttons from the
              output.

   Options for Integration with External Tools
       -bugzilla
              Specify the URL of a  root  of  a  Bugzilla  installation.  Will
              replace  ’Bug ###’ in commit logs with a link to the appropriate
              bug. (New in StatSVN)

       -chora <chora-url>
              Specify the URL of a Chora installation  for  the  module.  This
              must  be  the  URL  of the page for the module’s root directory.
              StatSVN will create links to Chora for  directories,  files  and
              revisions.

       -viewvc <viewvc-url>
              Specify  the  URL  of a ViewVC installation for the module. This
              must be the URL of the page for  the  module’s  root  directory.
              StatSVN  will  create links to ViewVC for directories, files and
              revisions.

       -mantis <mantis-url>
              Specify the root URL of a Mantis bug  tracker  installation.  In
              commit messages, this will turn âbug.

       -trac <trac-url>
              Specify the root URL of a Trac installation. In commit messages,
              this will turn â

   Miscellaneous Options
       -debug Output lots of additional progress information.

       -verbose
              Output additional progress information.

       -version
              Output the version of StatSVN.

       -dump  Will output the repository content on console and stop

       -concurrency-threshold <millisec>
              Switch to concurrent svn diff if the first call takes more  than
              the threshold (in milliseconds) (default: 4000)

       -threads <int>
              How many threads for svn diff (default: 25)

       -anonymize
              Anonymizes committer names.

IMPORTANT NOTES

       Unlike its cousin statcvs(1), statsvn can work on distant repositories.
       Please note however, that statsvn needs to download many diffs from the
       repository,  so  it  is often more network-efficient to simply rsync(1)
       the repository to a local host and run it on the local copy.

       To compensate for that, however, diffs are cached in the $HOME/.statsvn
       directory.

       Do not forget the -v option to svn diff !

       Finally,  note  that  the  default  value  for the number of concurrent
       svn(1) processes might be too much for the  target  host.  If  you  get
       weird  error messages about unreachable hosts and similar problems, try
       taking down the -threads parameter.

JAVA-WRAPPERS NOTE

       This program is a shell script wrapper based on java-wrappers(7).   You
       therefore   benefit   from  several  features;  please  see  the  java-
       wrappers(7) manual page for more information about them.

SEE ALSO

       svn(1), statcvs(1) and java-wrappers(7)

       statsvn’s website at http://www.statsvn.org, and most particularly  the
       user                              manual                             at
       http://svn.statsvn.org/statsvnwiki/index.php/User_Manual.

AUTHOR

       This manual page was adapted by Vincent Fourmond  <fourmond@debian.org>
       from    the   one   for   statcvs(1)   written   by   Christian   Bayle
       <bayle@debian.org>. It was written for the Debian project, but  may  be
       used by others.

                                  03-04-2008