zoukankan      html  css  js  c++  java
  • svn代码量统计

    背景

    2019年年终总结,作为后端开发人员一整年的工作成果,最拿得出手的就是项目中的代码提交量,而在我的工作中,代码版本管理使用的是svn,但svn本身貌似不支持进行代码统计,因此从网上找到了一个svn代码统计的工具:StatSVN,该工具是由java写的一个jar包:statsvn.jar,因此要使用该工具前,请确保安装了jdk环境。
    本文基于Windows操作系统。

    开始使用

    下载statsvn.jar工具

    官网下载地址:http://www.statsvn.org/downloads.html

    官网目前最新版本是0.7.0

    本人点击时是无法下载的,因此这里提供另外一个下载地址:https://sourceforge.net/projects/statsvn/

    确保svn支持命令行功能

    • 在命令行工具输入:svn log

    出现下面的情况,说明svn是支持命令行工具的,如果提示的是:‘svn’不是内部或外部命令...,则需要重装svn

    • 重装svn

    注意勾选上支持命令行工具

    创建文件与目录

    • 这里在E:devProjectworkNewSmartToiletsvnlog下新建一个svn.log文件和logs文件夹,并把刚刚下载的statsvn.jar包也放在当前目录下。
    • logs目录用于存放最终生成统计的页面。

    准备命令

    准备用于生成日志文件和页面的两个重要命令:生成svn.log文件和生成页面,这里直接把命令放在bat处理文件中,在E:devProjectworkNewSmartToiletsvnlog目录下新建一个log.bat文件,并放入以下命令

    cd E:devProjectworkNewSmartToiletSmartToilet
    
    svn log -r {2019-01-01}:{2019-12-31} --xml -v > E:devProjectworkNewSmartToiletsvnlogsvn.log
    
    cd E:devProjectworkNewSmartToiletsvnlog
    
    java -jar statsvn.jar E:devProjectworkNewSmartToiletsvnlogsvn.log  E:devProjectworkNewSmartToiletSmartToilet -output-dir E:devProjectworkNewSmartToiletsvnloglogs
    pause
    

    说明

    • 第一行表示进入到从svn checkout下来的项目目录:cd {项目路径},这里checkout下来的项目为SmartToilet
    • 第二行表示生成log文件:svn -log -r {提交代码的开始日期}:{提交代码的结束日期} --xml -v > 生成的日志文件路径,这里生成的日志文件为svn.log
    • 第三行进入到存放statsvn.jar的目录:cd {存放statsvn.jar的目录}
    • 第四行执行使用java命令生成文件:java -jar statsvn.jar {上一步生成的日志文件路径} {从svn checkout下来的项目目录} -output-dir {最终生成的页面存放的目录}

    结构目录

    • 最终结构目录如下

    生成分析页面

    • 双击log.bat处理文件,等待执行。
    • 生成页面后,点击进入logs目录,找到入口文件:index.html,点击查看。
    • 最后生成的页面如下

    到目前为止3千多个文件,6万多行代码,嗯。。。

    完结,撒花。。。

  • 相关阅读:
    开启Tomcat APR运行模式,优化并发性能
    KVM与XEN虚拟化环境究竟有何不同
    fio测试freenas共享的iscsi磁盘性能
    ubuntu 16.04网速监控脚本
    centos 7网速监控脚本
    ubuntu 16.04 配置远程连接
    iometer测试磁盘IO性能
    pip 使用豆瓣源
    raid write back / write throught
    卡常数技巧
  • 原文地址:https://www.cnblogs.com/itmacy/p/12220982.html
Copyright © 2011-2022 走看看