统计工具StatSVN使用指南


统计工具StatSVN使用指南
1. 概述
StatSVN是一个Java写的开源代码统计程序,从statCVS移植而来,能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表。
1.1 目的
本文档目的是对代码统计工具statSVN的安装和使用方法进行说明。
1.2 角色职责
不涉及
1.3 入口标准
需要统计的SVN Library已存在
1.4 输入
需要统计的代码
1.5 输出
统计报告
1.6 出口标准
成功输出统计报告
2. 流程
2.1 准备工作
2.1.1 安装Java运行环境
StatSVN运行需要Java的运行环境支持,所以需要安装Java的运行环境jdk 1.4.或更高版本。编写本指南时最新版本是jdk1.6,如需要可以到网上下载。在命令行模式下运行java –version命令,可以查看到所安装java运行环境版本。
2.1.2 安装SVN客户端命令
Statsvn在使用中需要使用SVN的客户端,因此需要确保机器上可以访问到SVN的客户端命令
2.1.3 下载StatSVN
StatSvn可以从StatSvn官网http://www.statsvn.org/index.html下载,编写本指南时最新版本是 0.4.1,压缩包下载到本机目录下,如c:\statsvn,无需安装。
2.2 统计工作
2.2.1 Checkout工作拷贝
从仓库中CheckOut一个需要统计的路径:如果在工作拷贝目录下进行,请先更新一下,保证取出是最新的版本,以保证统计的结果准确性。假定该工作拷贝目录为c:\myproject。
2.2.2 生成Log文件
生成工作拷贝的XML Log文件供Statsvn解析使用:首先通过运行命令行进入工作拷贝目录c:\myproject,再使用svn log -v --xml > logfile.log的命令,其中 logfile.log为log文件的名称,可以根据需要自行定义。这样就在工作拷贝的目录下生成一个名称为logfile.log的文件。
2.2.3 调用StatSVN进行统计
调用StatSvn的统计分析工作: 首先通过运行命令行进入c:\statsvn,再调用命令java -jar statsvn.jar c:\myproject\svn.log c:\myproject,命令运行成功即完成了统计工作。
该命令的格式是java -jar statsvn.jar [options] <logfile> <checked-out-module> ,其中参数<logfile>为2.2.2中生成的log文件,<checked-out-module>为2.2.1中工作拷贝目录,注意两个参数都要列出正确的全路径,否则会提示错误如logfile.log找不到等等。[options]为可选参数,该参数格式及用法如下:
-version           print the version information and exit
  -output-dir <directory>  directory where HTML suite will be saved
  -include <pattern> include only files matching pattern, e.g. **/*.c;**/*.h
  -exclude <pattern> exclude matching files, e.g. tests/**;docs/**
  -tags <regexp>     show matching tags in lines of code chart, e.g. version-.*
  -title <title>     Project title to be used in reports
  -viewvc <url>      integrate with ViewVC installation at <url>
  -bugzilla <url>    integrate with Bugzilla installation at <url>
  -username <svnusername> username to pass to svn
  -password <svnpassword> password to pass to svn
  -verbose           print extra progress information
  -xdoc              optional switch output to xdoc
  -threads <int>     how many threads for svn diff (default: 25)
-concurrencyThreshold <millisec> switch to concurrent svn diff if 1st call>thr
eshold (default: 4000)
-dump              dump the Repository content on console
2.3 查看统计结果
2.3.1 功能概述
查看统计结果:
上述命令运行成功后,可以看到在c:\statsvn目录下生成一组包括表格与图表的静态HTML文档。可以用浏览器打开index.html查看统计结果。
以下为部分截图供参考:
代码行数的时间线;

针对每个开发者的代码行数;这里的Changes对应提交次数


开发者的活跃程度;

开发者最近的提交;这里new代表新增的文件,del代表删除文件,+int代表该文件新增代码行数,-int代表该文件删除代码行数

文件数量;
平均文件大小;
最大文件;
哪个文件是修改最多次数的;
目录大小;

带有文件数量和代码行数的Repository tree。
2.3.2 优缺点分析
优点:StatSVN会把当前SVN库的状态用图片和图表的方式展现出来,可以按不同分类分别展开,功能强大。
缺点:
1. StatSVN统计的是所有代码行,包括注释和空行,但一般度量要求是有效代码行,在分析时需要注意这一点。
2. StatSVN不考虑修改的代码行数,只考虑与上一版本相比新增(+)与删除(-)的代码行数。

转载请注明源自www.SCMLife.com,请保留版权. 本贴地址:http://bbs.scmlife.com/viewthread.php?tid=15991

 

你可能感兴趣的:(C++,c,工作,SVN,C#)