Plotting arbitrary data for repository

跟風遠走 提交于 2019-12-07 01:33:46

问题


I'm looking for a way to visualize arbitrary information about my repository over time, which might be some version-dependent number, such as:

  • lines of code
  • number of lines in a latex document
  • time between commits
  • anything that can be output by a script

What is the best way to visualize this information?

More specifically, I'm using mercurial and would ideally like something with a decent interface, with plot resizing/scrolling/etc... Jenkins' plot plugin is decent but not great, but more importantly it's not possible to visualize past data (say, after adding a new metric).


回答1:


I would suggest to split your task to simplify everything a little bit. It is likely you will need several different tools in order to collect and visualize all required information. Historical view seems to be another big challenge.

Lines of code

There are several plugins available for Jenkins, but almost all are highly specialized. SLOCCount plug-in seems to be most universal, but it does not provide any graphical output.

  • NSIQ Collector Plugin
  • SLOCCount plug-in
  • JavaNCSS Plugin

There might be some other option for your language. For example, CCCC will provide required information for C and C++ code:

Number of lines in a latex document I see several options to achieve that:

  • adapt existing solution/plugin
  • use repository statistics tool (Pepper, for example, can do the trick)
  • use simple shell script to count lines and report it

Pepper will generate something like the following:

Please check Pepper gallery. There are another tools, for example: hgchart

Time between commits

The simplest solution is to let a commit to trigger some trivial job, so Jenkins will provide all information as part of build history (with a timeline, etc).

Another solution is to use repository statistics tool once again:

Anything that can be output by a script

There are several good plug-ins for that.

  • Plot plugin can visualize multiple values provided as properties or csv file.
  • Measurement Plots Plugin scans the output in order to find values to be visualized

Happy continuous integration.



来源:https://stackoverflow.com/questions/12499912/plotting-arbitrary-data-for-repository

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!