• 照猫画虎!是也乎!哈哈哈!

1. 系统工具尝试

  • 开始想通过 FreeBSD 中的 find,awk,sed 什么的功能来自个儿组合一个分析方案

1.1. 一定时期内被更新的文件

  • 反复尝试后得到:
    •   # find /path/to/my/CVS -mtime -7 -type f | wc -l | awk '{print $1}'
        
      输出统计数目
    • 那未 Python 组织自动分析所有CVS:
    • /modifiles.py -- 执行脚本

    • 执行结果: /statcvs.xml

    • 页面解析效果:
  • 但是如何统计CVS操作的次数?通过对比 CVSROOT/History 记录行数?!
  • 最终发现发现--太麻烦!也不好定制-- 放弃

2. statcvs-xml 尝试

  • 后来统一在 statcvs-xml 的JAVA分析工具上!

    • 但是依然麻烦!
    • 虽然有完善的图表汇报,但是,只能针对模块进行分析,
    • 而且只能先 生成log 文件再进行分析!然而log 文件,又要在 check out 模块代码后才能够生成!
  • 最后还是在Python 的帮助下自动将各模块的分析页面进行汇总:

3. history 分析!

  • 最后还是回想交流需求时,提到的原先CVS统计处理是:
    • 每周记录CVSROOT中的 history 文件的行数,对比得到本周的CVS操作次数来估计更新数量!

  • 嗯嗯!当然的有 limodou 的先期尝试:
    • 获得类似的CVS分析成果
    • cvsdelta设计分析

    • 哈哈哈!得来全不费工夫!
    • 根据具体情况加入设置文件的支持组织为/cvsanalyser.py

    • 只要在系统的任何地方可以运行Python脚本,
    • 设置/cvsanalyser.conf 文件就可以自动分析CVS活动了!

  • 说白了,就是:
    • 模拟原先的统计活动,使用Python 来快速实现:
    • 自动的从所有CVS仓库中取出 history 文件
    • 根据时间限定来过滤出有效的操作记录
    • 统计这些记录中的更新次数和文件
    • 组织汇报为XML文件,并根据ViewCVS站点的链接,组合出下载,查阅地址!

3.1. 文学编程!

  • 以上的源代码,可以看到有很多 的注释!
  •    1 #@+leo-ver=4
       2 #@+node:@file cvsanalyser.py
       3 ...
    

    -- 等等!类似的已经泄露了天机!是 Leo 编辑管理的!

  • LeoEnvironment -- Leo 文学编程环境!


ZoomQuiet [2005-01-05 09:56:01]