简介:该系统利用开源软件statcvs对cvs产生的日志文件进行分析整合,形成web网页方式。相关管理人员通过系统自带浏览器可以方便的进行查看。
优势:
1、 与cvs系统配合较好。
2、 能快速便捷的分析出cvs产生的日志信息,有利于及时查看配置项变化情况。
3、 通过对cvs日志信息的进一步分析,可以直观的反映出开发者的工作状况。
4、 资源开源,便于改进与交流
缺陷:
1、 内容局限于cvs提供的日志信息。
日志信息源于cvs服务端中每个配置项的“,v”文件,主要内容包括:每个文件的配置库路径、文件名称、该文件的每个版本信息记录(包括提交人账号、提交时间、提交时输入的注释、提交的代码行数及修改的行数等)
2、 代码行的统计条件较为苛刻,只能统计出文本格式文件的代码行数,将空格、空行、注释等信息视为正常代码行,不能准确体现开发者的真实工作量。
3、 统计信息的期间为:自配置库提交入文件开始至统计的最后时间。统计信息累计叠加。
也可以展现某人任意一个期间段的统计情况。
简述:该系统分成: statcvs生成的统计页面以及cvs后台产生的日志信息。统计的网页信息则由分析cvs生成的日志信息而来。
功能:按一定周期自动更新出每个配置库的代码量变化信息,并以网页形式进行浏览,便于简便快捷的获取统计资料。
思路:
取得最新需要统计的cvs配置库配置项资源——>生成log信息——>通过statcvs将信息分析并生成页面
安装部署:
IP:10.1.56.228 是为startcvs环境专用。
OS: L4U4-64
内存:2048M
硬盘:30G
JDK版本:jdk 1.6.0_22
Statcvs版本:0.7.0
statcvs.jar 文件在/opt/statcvs/ 目录下
需要注意的问题:
我们用的是statcvs0.7.0,故需要配置的环境变量为jdk1.4.2以上版本。
由于statcvs所需的JDK对操作系统的内存有限制:
1、32位操作系统下,jdk调用的内存一般限制在1.5G-2G。32位XP系统下,jdk调用的内存不超过1400M。
2、 如果jdk调用的内存超过1500M,,则转换到服务器IP地址为10.1.56.228的64位操作系统上进行。64位操作系统对jdk调用内存无限制。
主要命令语句:
cvs update -p -d -c更新路径 (前提是需要checkout出相应路径)
cvs log -d "2002-01-01<2002-12-31" > xxx.log 生成从2002-01-01到2002-12-31之间的日志文件
java -jar statcvs.jar -output-dir [path save HTML results] [log file path] [path to chekout cvs module]
例:
$java -jar /opt/statcvs/statcvs.jar -output-dir /home/zhangjianzhi/test1 /home/zhangjianzhi/test/cvs.log ./
java -jar -mx800m statcvs.jar -output-dir [path save HTML results] [log file path] [path to chekout cvs module]
例:
$java -jar -mx800m /opt/statcvs/statcvs.jar -output-dir /home/zhangjianzhi/test1 ./cvs.log ./
在输出的目录文件中找到index.html,即代码统计的主页信息:包括最后统计时间、统计区间、文件总数、代码行总数及开发人员总数,以及下列综述信息。
主页还包括以下视图:Developers、Commit Logs、Lines of Code、File Statistics、Directory Sizes、Repo Heatmap、LOC and Churn、 Cloud Commit。这些视图是从不同角度展现统计信息,每个视图内容基本为信息重组,便于浏览者针对不同角度进行查看。
下面我们分别介绍一下,各个统计信息的详细信息:
1、 Developers
如下图所示:
该视图以开发者为焦点,主页体现了从项目从入库时至统计时间止的一个完整代码提交量的概况。分别点击每个开发者,进入下一个页面,则详细展现了每位开发人员的工作量情况。页面如下图:
生成的日提交情况图及周提交情况图均为截至统计日的最近一次提交量及最近一周情况。横轴为时间,纵轴为代码行数量。
2、 Commit Logs
如下图所示:
该视图以月为单位,展现每个月开发者对文件提交的详细信息,但未有代码行的累计统计。
左侧是月份选择,可根据实际需要,直接选择查看该月情况。
3、 Lines of Code
如下图所示:
该视图反映了代码量提交的整体情况,横轴为日期,纵轴为代码行数量。
4、 File Statistics
如下图所示:
该视图展现以文件为焦点,分析了提交情况。横轴为日期,纵轴为文件数量。展现了文件提交随日期的增加变化。
5、 Directory Sizes
如下图所示:
该视图展现了以目录为焦点,分析了每个目录下文件的代码行变化情况。其中图表的横轴为日期,纵轴为目录的代码行数,体现了不同目录随着时间的变化代码行数也随之变化。
6、 Repo Heatmap
浏览该视图需要安装jre-6u7-windows-i586-p-iftw.exe进行支持。该视图以地图的方式进行浏览,可以方便的展示最近一个月的提交情况。绿色为文件增加行数,红色为减少行数。鼠标移动过去即可看到详细信息情况。
7、 LOC and Churn
如下图所示:
该视图宏观展现了代码行与代码行变动随着时间变化的趋势,该图表,横轴为日期,左纵轴为代码行,右纵轴为变动行数。
8、 Cloud Commit