##language:zh * '''照猫画虎!'''是也乎!哈哈哈! <> == 系统工具尝试 == * 开始想通过 FreeBSD 中的 find,awk,sed 什么的功能来自个儿组合一个分析方案 === 一定时期内被更新的文件 === * 反复尝试后得到: * {{{ # find /path/to/my/CVS -mtime -7 -type f | wc -l | awk '{print $1}' }}} 输出统计数目 * 那未 Python 组织自动分析所有CVS: * [[/modifiles.py]] -- 执行脚本 * 执行结果: [[/statcvs.xml]] * 页面解析效果: * {{attachment::modifiles-snap.jpg}} * 但是如何统计CVS操作的次数?通过对比 CVSROOT/History 记录行数?! * '''最终发现发现--太麻烦!也不好定制'''-- 放弃 == statcvs-xml 尝试 == * 后来统一在 [[http://statcvs-xml.berlios.de/|statcvs-xml]] 的JAVA分析工具上! * 但是依然麻烦! * 虽然有完善的图表汇报,但是,只能针对模块进行分析, * [[http://statcvs-xml.berlios.de/statcvs/index.html|StatCvs-XML 0.9.4 代码活动]]--分析效果 * 而且只能先 生成log 文件再进行分析!然而log 文件,又要在 check out 模块代码后才能够生成! * [[http://statcvs-xml.berlios.de/index.html|Quickstart]] -- 应用的说明 * 最后还是在Python 的帮助下自动将各模块的分析页面进行汇总: * {{attachment::weeklystat.jpg}} 形成可积累的XML汇报文件 * 虽然,问题没有完全解决,但是解析XML的XSL模板却是个愉快的体验! * [[/weeklystat.py]] -- 分析脚本 * [[/weeklystat.xml]] -- 记录文档 * [[/weeklystat.xsl]] -- 解析模板 == history 分析! == * 最后还是回想交流需求时,提到的原先CVS统计处理是: * '''每周记录CVSROOT中的 history 文件的行数,对比得到本周的CVS操作次数来估计更新数量! ''' * 嗯嗯!当然的有 limodou 的先期尝试: * 获得类似的CVS分析成果 * [[http://pyrecord.freezope.org/articles/doc2001082801/show|cvsdelta设计分析]] * 哈哈哈!得来全不费工夫! * 根据具体情况加入设置文件的支持组织为[[/cvsanalyser.py]] * 只要在系统的任何地方可以运行Python脚本, * 设置[[/cvsanalyser.conf]] 文件就可以自动分析CVS活动了! * 说白了,就是: * 模拟原先的统计活动,使用Python 来快速实现: * 自动的从所有CVS仓库中取出 history 文件 * 根据时间限定来过滤出有效的操作记录 * 统计这些记录中的更新次数和文件 * 组织汇报为XML文件,并根据ViewCVS站点的链接,组合出下载,查阅地址! === 文学编程! === * 以上的源代码,可以看到有很多 的注释! * {{{#!python #@+leo-ver=4 #@+node:@file cvsanalyser.py ... }}} -- 等等!类似的'''已经泄露了天机!是 Leo 编辑管理的!''' * LeoEnvironment -- Leo 文学编程环境! ----- ZoomQuiet [<>]