`

svn 统计代码量

 
阅读更多

纯新增代码,如:
+void foo() {
+    ... ...
+}

纯删除代码,如:
-void foo() {
-    ... ...
-}

修改的代码,如:
-void foo(void);
+void foo(int);

我们所要统计的所谓有效代码更多是指纯新增的代码和修改的代码,纯删除的代码可忽略不计。这样一来实际有效代码行数 = 纯新增代码行数 + 修改代码行数;而修改的代码在svn diff结果中体现为一减一加,实际修改行数是等于其+的行数的。也就是说有效代码行数就是svn diff结果中所有前缀为+的行的行数。svn diff输出格式相对规整,通过解析得到这个行数并非难事。最简单的方法就是使用Shell脚本 了。

脚本全部内容这里就不列出来了,这里 可以下载。其核心代码只有以下两行:

svn diff -r$start_revision:$end_revision $target $USERNAME $PASSWD > $TEMPFILE
add_lines_count=`grep "^+" $TEMPFILE|grep -v "^+++"|sed 's/^.//'|sed '/^$/d'|wc -l`

首先我们使用svn diff命令将两个修订号之间的差异重定向到一个临时文件中,然后使用grep、sed和wc的组合完成行数的计算:其中首先过滤出以+开头的行,但去除其中+++开头的行,得到的是所有只以一个+开头的行。再利用set 's/^.//'删除每行行首的那个+,用set '/^$/d'删除所有空行,最后利用wc -l计算总行数。

也就是说通过上面脚本运行后得到的有效代码行数是不包括空行的,但是包含注释代码。

 

转自:http://bigwhite.blogbus.com/logs/92616077.html

分享到:
评论

相关推荐

    statsvn代码量统计工具

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

    【SVN代码库数据统计分析工具】

    基于TortoiseSVN API接口实现的周期性目录用户使用情况数据统计分析工具

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

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

    SVN资源库代码统计工具

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

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

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

    svn代码行变更统计工具

    NULL 博文链接:https://45121739-163-com.iteye.com/blog/1390144

    统计SVN服务器项目的代码量

    将需要统计的svn路径下的代码checkout到本地工作目录里,版本可以自由选择,如果你要统计某个版本下的代码量checkout出对应的版本即可,如果需要统计最近的版本时的代码量,checkout最新版本。

    利用statsvn进行代码量统计

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

    python实现统计代码行数的方法

    主要介绍了python实现统计代码行数的方法,涉及Python中os模块及codecs模块的相关使用技巧,需要的朋友可以参考下

    Shell脚本实现的基于SVN的代码提交量统计工具

    主要介绍了Shell脚本实现的基于SVN的代码提交量统计工具,本文直接给出实现脚本代码,需要的朋友可以参考下

    idea :插件Statistic 统计代码数量和行数

    显示项目统计数量。 这个插件显示的是按扩展名排序的文件,以及大小、行数、LOC等。 用户可以选择统计(Project/Module/Package/File)范围,选择范围后需要点击Refresh,。 (这个插件需要Java1.8)

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

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

    statsvn使用说明.zip

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

    statsvn0.7.1

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

    a svn stat tool written by Go.(基于svn的每人代码提交情况统计工具).zip

    并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理...

    根据HG导出日志,统计修改代码行数

    在网上查找到了SVN的代码统计工具,但是HG却查不到,正好领导要统计工作量,所以就根据HG导出的日志自己写了个。 唯一的BUG就是如果某个人上传了某个文件,那么这个文件的所有数据都将被记入。所以不是很准,但是除...

    Subversion

    命名版的svn。统计代码量时如果使用statsvn.jar则必须使用该客户端。

    轻量级覆盖率测试工具logcover.zip

    实现:• 根据svn,对源代码进行轻量级静态分析,获得代码中异常日志打印的原始信息• 收集单机/多机测试日志,并对日志文件进行parse、filter、merge等处理,得到实际覆盖的日志信息• 根据代码中的原始日志信息和...

    论文研究-开源软件库中文件修改的统计特性:案例分析.pdf

    开源软件的开放合作模式有望改变传统的软件开发方式,挖掘SVN(Subversion)代码库中文件的版本变化规律,有助于发现潜在缺陷,从而改善软件质量。以两个面向对象开源软件为例,发现其中的类文件修改次数大致服从幂...

Global site tag (gtag.js) - Google Analytics