为什么要用StatSVN
程序员: 我想看看我对项目贡献了多少,比别人多吗?
项目经理:项目进行的怎么样,有哪些问题已经改了?
Boss: 最近这段时间每个人的业绩怎么样?
通过svn的提交信息看一下,其实是最容易反应上面的这些内容。但是你让管理者装个svn然后再告诉他们怎么show log
,那你等着被骂吧。因为没人愿意浪费时间去看都是文字的东西。
StatSVN很好的解决了这些问题,只要有人负责把svn提取出来,其他人就可以像浏览网页一样浏览这些信息内容。
安装StatSVN
下载地址:
下载完就要安装了把,这个软件是java写的一个jar包,直接用java命令运行就行了,具体过程下面介绍。
用svn命令行生成log信息
- 1, 用
svn checkout
一份本地工作目录出来 - 2, 生成log文件
比如我这里要生成一份2016年的所有提交信息,命令如下:
f:\svn>svn log -r {2016-1-1}:{2016-12-31} -v --xml --username xxxx --password xxxx checkoutpath > \svn_2016_log\M_log.xml
执行命令后就会在相应的目录下生成一个M_log.xml的文件
<?xml version="1.0" encoding="UTF-8"?>
<log>
<logentry
revision="3756">
<author>xxxx</author>
<date>2015-12-30T09:29:22.445250Z</date>
<paths>
<path
kind="file"
action="M">/branches/xxx/xxx.c</path>
<path
kind="file"
action="M">xxx.c</path>
</paths>
<msg>pdp激活通过</msg>
</logentry>
<logentry
revision="3757">
................
................
- 3,生成统计信息
执行StatSVN相关命令
f:\svn>java -jar H:\statsvn-0.7.0\statsvn-0.7.0\statsvn.jar .\svn_2016_log\M_log
.xml workdir -output-dir .\svn_2016_log\M_log
命令解析
java -jar statsvn.jar options<logfile> <checked-out-module>
logfile
指的是步骤2中生成的xml文件
checked-out-module
指的是步骤1中checkout出来的工作目录
options
具体参考 http://wiki.statsvn.org/User%20Manual.ashx
这里用到的-output-dir
是指输出统计信息的路径
- 4,查看统计信息
进入生成的路径,查看index.html
你就能看到StatSVN的统计信息了
来个华丽的分割线,到这里就大功告成了。
问题
- 1,windows命令行下无法运行svn命令
安装TortoiseSVN的时候没有选择安装命令行工具
- 2, 参考文献
http://wiki.statsvn.org
![Paste_Image.png](http://upload-
![Uploading f231d30ff70546bdb9e7f5bd5f450ebc_th_023031.jpg . . .]images.jianshu.io/upload_images/4394991-40809ba17e377f73.png)