`

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

分享到:
评论

相关推荐

    JAVA编写SVN统计代码数量系统

    【标题】"JAVA编写SVN统计代码数量系统"是一个基于Spring Boot框架的项目,用于统计在Subversion(SVN)版本控制系统中的代码提交情况。它能够详细地分析每个团队成员在SVN仓库中的代码贡献量。 【核心知识点】: ...

    statsvn代码量统计工具

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

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

    4. **数据分析**:通过对SVN日志的深度挖掘,该工具可以生成各种统计报告,如提交次数、代码修改量、用户活跃度等,以图表形式直观展示,便于理解和决策。 5. **异常检测**:通过对比历史数据,工具可以发现不寻常...

    java实现的svn统计修改代码行数完整源码

    Java实现的SVN统计修改代码行数的源码解析 在软件开发过程中,代码行数(LOC,Lines of Code)经常被用作评估项目规模、工作量和复杂度的一个指标。对于版本控制系统如Subversion(SVN),了解每次提交中修改的代码...

    利用statsvn进行代码量统计

    - **定义**: Statsvn是一款基于Subversion(简称SVN)的日志分析工具,它能够通过对SVN日志的分析来统计代码提交的情况。该工具特别适用于项目管理者和团队领导者,帮助他们了解团队成员的工作进度与贡献度。 #### ...

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

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

    svn代码行变更统计工具

    4. **自定义实现**:如果文章是关于自建工具,那么会介绍如何使用编程语言(如Python、Java或Perl)来编写脚本,解析SVN的日志信息,统计代码行变化。 5. **使用步骤**:详细说明如何使用选定或自制的工具进行代码...

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

    配合提供的微信截图_20230912153147.png,可能展示的是StatSVN生成的部分报告界面,例如,图表可能展示了代码量随时间的增加,或者开发者贡献的对比情况。如果图片清晰且包含足够的信息,可以通过分析截图来进一步...

    SVN资源库代码统计工具

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

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

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

    SVN代码统计包(全)

    而“代码统计”这部分内容,通常涉及到的是如何利用pySvn或者其他Python工具(如cloc、sloccount等)来分析SVN仓库中的代码量。代码统计可以包括总行数、注释行数、空行数,甚至可以进一步细化到每个文件或每个作者...

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

    统计代码行数可以帮助开发者了解项目的规模,同时也是衡量工作量的一种方式。通常,我们会排除注释行和空行,只计算实际的代码行数。Python作为一种强大的脚本语言,非常适合用来编写这样的工具。 #### 二、关键...

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

    在执行过程中,脚本会遍历指定目录下的所有文件,查找匹配`FILES_TYPE`的文件,并根据`CODER_LIST`中的开发人员名字统计代码行数。 值得注意的是,这个脚本的代码可能比较粗糙,没有实现一些高级功能,比如忽略特定...

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

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

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

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

    代码行数统计工具

    在软件开发过程中,代码行数(Lines of Code, LOC)是一种常见的度量标准,用于评估项目的规模、复杂性以及开发工作量。标题提到的“代码行数统计工具”是专门用于计算源代码文件中行数的实用程序,适用于各种项目。...

    mahjongList_SVN统计_pysvn_pysvn使用_

    本文将深入探讨`pysvn`库的使用,包括如何进行SVN统计、批量修改SVN文件等关键功能。 首先,我们需要了解`pysvn`库的基本结构和主要模块。`pysvn`提供了丰富的API,如`Client`类,用于执行各种SVN操作。例如,你...

    svn统计脚本

    ### SVN统计脚本知识点解析 #### 一、脚本概述 在软件开发过程中,版本控制系统如Subversion(SVN)是不可或缺的工具之一,它帮助团队管理代码的变更历史,协同工作并解决冲突。而对代码量的统计,尤其是新增、...

    一个实用的代码行统计工具

    6. **版本控制集成**:与Git、SVN等版本控制系统集成,可以追踪代码行变化历史,对比不同版本间的代码量差异。 使用代码行统计工具的过程一般如下: 1. **选择合适的工具**:根据项目需求和团队偏好选择工具,例如...

Global site tag (gtag.js) - Google Analytics