`
chenzhou123520
  • 浏览: 4249386 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用statsvn统计svn中的代码量

阅读更多

StatSVN介绍

StatSVN是一个Java写的开源代码统计程序,从statCVS移植而来,能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表。比如:代码行数的时间线;针对每个开发者的代码行数;开发者的活跃程度;开发者最近所提交的;文件数量;平均文件大小;最大文件;哪个文件是修改最多次数的;目录大小;带有文件数量和代码行数的Repository tree。StatSVN当前版本能够生成一组包括表格与图表的静态HTML文档。

StatSVN下载

StartSVN官网地址为:http://www.statsvn.org/index.html 

StartSVN的下载页面为:http://www.statsvn.org/downloads.html也可以下载本文的附件

现在官网上最新的版本为:statsvn-0.7.0

StatSVN使用

使用须知 

StatSVN的运行需要Java的运行环境支持,所以大家需要安装Java的运行环境(Java Runtime Environment)。JRE可以从Sun的网站上下载。

Statsvn在使用中需要使用SVN的客户端,因此需要确保机器上可以访问到SVN的客户端命令

 

Checkout工作拷贝 

首先从SVN仓库中checkout一个需要统计的路径(如果在工作目录下进行统计,首先请更新,保证工作区中的版本是最新的版本,确保统计结果的准确性),例如我把我的某个路径下的工程checkout在我的电脑上的 D:\MyProjects 路径下。

 

生成svn log文件 

首先通过命令行进入工作目录:D:\MyProjects ,再使用svn log -v --xml > logfile.log的命令,其中 logfile.log为log文件的名称,可以根据需要自行定义。这样就在工作拷贝的目录下生成一个名称为logfile.log的文件。

注:要在命令行中使用svn命令,在安装TortoiseSVN时必须选择安装commend组件,可以在cmd命令行里输入svn help测试一下该组件是否安装,如果未安装是无法使用svn log命令的。如果能够操作svn server的话也可以直接在服务器上生成svn log然后下载到本地来使用

 

调用StatSVN进行统计 

首先我们把从官网上下载的statsvn-0.7.0.zip包解压缩到D:\statsvn-0.7.0目录下

通过命令行进入D:\statsvn-0.7.0目录

调用命令java -jar statsvn.jar D:\MyProjects\logfile.log D:\MyProjects,命令运行成功即完成了统计工作。

该命令的格式是java -jar statsvn.jar [options] <logfile> <checked-out-module>

参数<logfile>为前一步中生成的svn log文件,<checked-out-module>为checkout工作拷贝目录,注意两个参数都要列出正确的全路径,否则会提示错误如logfile.log找不到等等 

<logfile>          path to the svn logfile of the module
<directory>        path to the directory of the checked out module

       [options]为可选参数,该参数格式及用法如下:

Some options:
-version           	print the version information and exit
-output-dir <dir>  		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>
-trac <url>        	integrate with Trac 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
-xml                	optional switch output to xml
-threads <int>        	how many threads for svn diff (default: 25)
-concurrency-threshold <millisec> switch to concurrent svn diff if 1st call>threshol
-dump              	dump the Repository content on console
-charset <charset> 		specify the charset to use for html/xdoc
-tags-dir <directory> 	optional, specifies the director for tags (default '/tags/')
Full options list: http://www.statsvn.org

 

 

查看统计结果

 

上述命令运行成功后,可以看到在D:\MyProjects目录下生成一组包括表格与图表的静态HTML文档。可以用浏览器打开index.html查看统计结果。

示例图片:

StatSVN优缺点分析

优点

StatSVN会把当前SVN库的状态用图片和图表的方式展现出来,可以按不同分类分别展开,功能强大。

缺点

StatSVN统计的是所有代码行,包括注释和空行,但一般度量要求是有效代码行,在分析时需要注意这一点。

StatSVN不考虑修改的代码行数,只考虑与上一版本相比新增(+)与删除(-)的代码行数。

 

分享到:
评论
5 楼 刘小瘦 2016-02-03  
使用svn log命令 对于某个目录和某个代码提交者不进行统计 该如何实现呢
4 楼 wenhai_zhang 2014-09-23  
zhangs137 写道
请问如何在dos中输入svn命令,我装了svn的客户端tortoiseSVN,但是我在dos下面输不了svn log的命令,这是为什么?如果你愿意帮我请麻烦联系我qq邮箱1370680200,谢谢先!
需要安装SVN服务端才行。
3 楼 chenzhou123520 2013-03-06  
Jeanky 写道
不知道为啥我的执行到 java -jar ....后线程跑到了一会儿后就停止不懂了,不知道啥原因,求教一下,谢谢哈

你把执行日志发邮件给我吧:chenzhou1025@126.com
2 楼 Jeanky 2013-03-05  
不知道为啥我的执行到 java -jar ....后线程跑到了一会儿后就停止不懂了,不知道啥原因,求教一下,谢谢哈
1 楼 zhangs137 2012-11-30  
请问如何在dos中输入svn命令,我装了svn的客户端tortoiseSVN,但是我在dos下面输不了svn log的命令,这是为什么?如果你愿意帮我请麻烦联系我qq邮箱1370680200,谢谢先!

相关推荐

    使用StatSVN统计SVN版本库

    使用它之前下载SVN的命令行客户端,以便能自动化任务。下面是StatSVN的快速上手手册。 * Expand the zip file into some directory, e.g c:\statsvn * Check out a working copy of the desired SVN module into ...

    统计SVN代码提交次数工具-statSVN

    统计SVN代码提交次数工具-statSVN /workspace 最新版本所在的目录  -include **/*.cpp:**/*.h 默认情况下statsvn统计指定目录下的所有文件,这个参数可以设置指定统计具体文件  -exclude xxx/** 表示不统计的内容...

    svn代码量统计工具StatSVN的使用

    svn代码量统计工具StatSVN的使用

    statsvn svn统计工具

    StatSVN是一个SVN版本库的静态分析工具,它能生成SVN log日志文件的html报表。这样能大概地评估工作量、开发效率、趋势,帮助项目管理。使用它之前下载SVN的命令行客户端,以便能自动化任务。

    statsvn使用说明.zip

    使用statsvn统计代码量,帮助汇总代码行数,便于分析代码。具体使用请参看教程,便于管理

    利用statsvn进行代码量统计

    利用statsvn进行代码量统计,详细描述了操作步骤及关键的指令,同时附上了jar包。

    statsvn.jar 统计代码

    使用方法: 进入新捡出的目录 svn log -v --xml &gt; logfile.log java -jar statsvn.jar -title wpabbs -username wp -password wp -output-dir e:/report -include **/*.java;**/*.jsp;**/*.js;**/*.css;**/*.c;**/*...

    statsvn代码量统计工具

    StatSVN是一个Java写的开源代码统计程序,从statCVS移植而来,能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表。比如:代码行数的时间线;针对每个开发者的代码行数;开发者的活跃程度;...

    可视化svn统计脚本生成工具V1.0 (使用statsvn作为统计生成工具)

    此工具用于生成svn统计工具,使用statsvn.jar 功能列表: 可以设置账号密码 通过浏览选择文件 可以通过配置文件设置默认名字 CreateSvnStatBat.exe.config 里面 &lt;add key="DefautName" value="statsvn.bat" /&gt; ...

    statsvn0.7 修复图表乱码 SVN 代码统计

    0.7版本的代码统计生成html中文乱码可用其本身的命令参数解决 -charset gbk 主要是图表乱码 statsvn0.7采用的是jfreechart1.0.13所以乱码问题归结为jfree 由于jfree里字体默认为SansSerif(不支持中文显示),所以要...

    SVN资源库代码统计工具

    SVN代码统计工具: 1、 statsvn-0.4.1.zip,下载后放入E盘根目录底下,解压成文件夹statsvn。 2、 本地必须有svn客户端跟jdk环境。 3、 checkout 希望统计的代码到本地。 4、 到dos命令窗口,把目录切换到刚checkout的...

    statsvn0.7.1

    统计svn代码量专用软件,解决svn log: svn info: Invalid svn info xml; unable to find revision or url for问题。官网发布的0.7.0版本有缺陷,一直报版本不匹配问题。

    statSvn,svn导出工具

    导出SVN提交详细目录

    直接拿来使用无任何BUG-SVN的可视化日志统计工具StatSVN.rar

    为什么要用StatSVN统计工具? 程序员: 我想看看我对项目贡献了多少,比...StatSVN很好的统计工具,能帮你统计团队成员各自的编写量,代码总数,提交情况,文件数量等情况,并且以html网页图表的方式发布统计结果。

    statsvn0.7.0中文乱码修正

    修正了statsvn0.7中生成的统计结果页面中中文目录、备注里中文乱码的问题

    使用StatSVN统计Subversion库中的代码开发情况入门

    StatSVN能够从Subversion版本库中取得信息,然后生成描述项目开发的各种表格和图表。比如:代码行数的时间线;针对每个开发者的代码行数;...笔者使用了一段时间STATSVN,感觉其可以作为一个有力的开发统计工具,对

    statsvn0.7 中文版(UTF-8)

    statsvn0.7 中文版 SVN 代码统计

    statsvn脚本

    StatSvn工具整合资源。包括statsvn依赖的客户端(Setup-Subversion-1.6.15.msi)、statsvn代码统计自动脚本(windows版本)、statsvn使用步骤、statsvn.jar(0.7版本)。

    statsvn 0.7.0 中文支持(报表中文支持)

    此版本基于statsvn0.7.0开发,主要解决了生成报表的中文乱码问题,如果csdn积分不够可以选择在www.scmeye.com 下载

Global site tag (gtag.js) - Google Analytics