SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 11727|回复: 13

[原创] svncount开源代码统计工具

[复制链接]
发表于 2014-7-29 19:30:27 | 显示全部楼层 |阅读模式
本帖最后由 qhy218 于 2014-7-30 07:10 编辑
0 B4 j* ?. j, D9 x: ~+ m- b( ]
* V& X4 S8 t" a7 w; U4 s开源地址:https://code.csdn.net/qhy218/svncount! l8 s* }7 |8 K1 `1 N% e8 c' a
+ x! F+ y5 c' l$ X0 S6 ^! H
一、项目介绍:对两个代码包/文件进行差异统计、或者对一个代码包/文件进行代码行统计,支持直接在SVN post-commit中添加自动化统计$ ?9 `3 P3 Y0 V2 i/ j

$ U& q3 e1 ~( Z  b二、统计结果:       结果支持数据库导入(当然,前提是你的版本库能在数据库中管理起来,然后在我的代码中做少量调整,如果不是有该功能,系统只会打印统计结果,如下类似):
1 Y  q" Z' l: k/ d! Q3 D7 g9 R        # ./diffcount --svn-post-commit -p /data3/svnroot/xxx -r 85811, J" }& i$ X# u! Q; d2 C  c
        LANG    ADD     MOD     DEL     A&M     BLK     CMT     NBNC
+ q& T* l7 S8 e, P' u        -----------------------------------------------------------------------6 _' E3 _3 l: p% x% h' y
        C          412      4         0         416       44      63       312
8 r# _% {! z. }        Shell      3         0         0          3         1         0          2
  ]4 `9 ~. N" g5 h        -----------------------------------------------------------------------% m+ i$ u9 U8 A4 K
        time:553
7 m# d8 {, N4 {# W0 }
" b* C! i+ w6 `1 |! ]- F* g0 ]# e三、数据注解
5 {$ h# F3 V& k: b1 c9 l        LANG表示编程语言% n* x8 W0 k3 S
       ADD表示新增
/ o" P, t5 i0 e, L1 {       MOD表示修改
5 F* P3 X8 j' X7 Y7 ]0 p4 _       DEL表示删除
' S) C1 l$ w: P: X4 P" Y! \& J       A&M是ADD和MOD的总和' m' x5 b# w" q, k' V9 Z  L
       BLK是空白行
+ X: X3 {2 ^5 z0 k       CMT为注释行
% k% C9 r+ e& {5 u4 Y  r! H# [/ p       NBNC为非空非注释行,即有效代码行
) R) C6 L- g0 ~
+ O0 K& f9 O5 l! X四、使用方法:配合svn post-commit脚本,可实现自动化统计,更多使用方法见help或readme.txt,部分函数注解见数据库及SVN相关函数说明.txt$ Z2 }1 Y) a, Z  \0 S- x! e4 j

! m4 }- Y& ~% H8 `五、附录截图:数据库插入后,效果如截图所示
# D6 |/ i' x5 @$ b2 D4 n6 s0 W, D9 G- M2 v

9 ]5 q7 `: |  O! J# k' c2 m, l* ~( \& v$ E& U8 I% W
) J8 E3 P3 ^% G8 W
. ]7 P7 Y; c5 C
' @. m5 t) k2 T3 e& U$ r5 @7 x
7 e+ M1 N0 y& }1 d0 `

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
发表于 2014-7-30 10:13:59 | 显示全部楼层
这种方法对提交代码的速度有一定影响吧?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-7-30 19:04:58 | 显示全部楼层
holly-2009 发表于 2014-7-30 10:13. o) J7 v0 D7 x4 `$ o
这种方法对提交代码的速度有一定影响吧?
% ]- C7 ^* E. T
影响非常小的,C写的代码,基本几十毫秒到几百毫秒就搞定了,我司去年一整年LOC超过1亿,数据库内几百万条记录,也不见得谁喊卡。2 _6 `  o6 S5 ?0 L( m; G' j9 K5 h; ?4 L* r

: v7 w+ E5 P/ kPS:我的截图中,我司昨天就有1w多行记录。
1 U$ e* I# I( Y9 n" }# ~
回复 支持 反对

使用道具 举报

发表于 2014-8-1 11:09:28 | 显示全部楼层
真的很不错哦,找机会实践一下。这样配置管理员在写发布文档时,就不需要再手动触发一次代码统计了。
回复 支持 反对

使用道具 举报

发表于 2014-9-24 09:58:06 | 显示全部楼层
这个统计查询做个查询界面就好了,可以是web的,也可以是个应用。
# i; _$ E2 ^; `/ Q这样用sql语句来查询还是不太友好。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-24 10:11:31 | 显示全部楼层
懂你 发表于 2014-9-24 09:584 p: t3 m9 z4 L6 B2 j
这个统计查询做个查询界面就好了,可以是web的,也可以是个应用。( W" H( ~4 }7 J# r; A
这样用sql语句来查询还是不太友好。 ...
4 \7 ?1 Q8 L; {  |& g
感谢提醒,web是有的,晚点我整理下,发布到CSDN上去

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

发表于 2014-9-24 16:41:02 | 显示全部楼层
qhy218 发表于 2014-9-24 10:11
+ B3 q1 W; E( G+ \感谢提醒,web是有的,晚点我整理下,发布到CSDN上去

- G3 @  i% A; H! \+ W" |* g那就重新开个帖子,直接连代码及说明文件都发布到一起吧。不用发布到CSDN上去,也可以做个banner图片给你宣传一下哈。
/ r, e' `, ?4 ^  D
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-24 19:43:01 | 显示全部楼层
懂你 发表于 2014-9-24 16:41
& C" h" I& r  M( z+ h那就重新开个帖子,直接连代码及说明文件都发布到一起吧。不用发布到CSDN上去,也可以做个banner图片给你 ...
3 Y8 b2 p1 }/ }+ ^. g
最近一段时间没时间搞,组里有人在离职,接替工作的还没招到呢,等新人来了空一点了就来搞搞。。
- o& T: j  w" ^4 p! w3 q) c7 g( `$ s
话说老大杭州有人推荐不(有偿推荐也没问题),我们内部类似项目不少,喜欢折腾的SCM可以进来一起折腾涨经验的,CMCenter、SVN Multisite、svn二次开发、Jenkins二次开发、Jenkins插件开发等等我们都有涉及:http://bbs.scmlife.com/thread-33045-1-1.html1 b" K- b. U7 T3 J% J
回复 支持 反对

使用道具 举报

发表于 2014-9-24 22:26:15 | 显示全部楼层
qhy218 发表于 2014-9-24 19:43
) \7 ?+ D; l+ Y% B最近一段时间没时间搞,组里有人在离职,接替工作的还没招到呢,等新人来了空一点了就来搞搞。。
! U. N( {9 @0 i( i* q6 D) V& y6 M" I2 H7 ^2 X
话说老 ...

$ r8 k8 o- l+ E$ B% N* ~我这边暂时没有合适的人推荐,认识的人基本上都跑阿里系了。
回复 支持 反对

使用道具 举报

发表于 2014-10-8 16:07:03 | 显示全部楼层
一直是采用svnstat在做类似工作
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2018-1-18 09:09 , Processed in 0.074486 second(s), 8 queries , Gzip On, MemCache On.

Powered by SCMLife X3.4 Licensed

© 2001-2017 JoyShare.

快速回复 返回顶部 返回列表