一.简介

仓库代码统计工具之一,可以按git提交人、提交次数、修改文件数、代码行数、注释量在时间维度上进行统计,亦可按各文件类型进行简单的统计,非常方便.

虽然以代码行数来衡量项目或者程序员并不是一件靠谱的事,但是从统计角度看趋势对于技术管理人员还是很有帮助的!GitStats就是这样的工具,它能生成以下统计数据,并以图表形式进行对比

常规的统计:文件总数,行数,提交量,作者数。 活跃性:每天中每小时的、每周中每天的、每周中每小时的、每年中每月的、每年的提交量。 作者数:列举所有的作者(提交数,第一次提交日期,最近一次的提交日期),并按月和年来划分。 文件数:按日期划分,按扩展名名划分。 行数:按日期划分。

二.安装ruby

1.参照文档安装ruby-2.4

也可以使用ssc来一键安装ruby

yum -y install git

git clone https://github.com/goodboy23/shell-script-collection

cd shell-script-collection

./ssc.sh install ruby-2.4

source /etc/profile

2.验证安装

ruby -v

3.添加ruby国内阿里云仓库来提高访问速度,并删除国外访问的仓库

gem sources -l

gem sources -a https://mirrors.aliyun.com/rubygems/ --remove https://rubygems.org/

gem sources -l

三.配置git_stats

1.安装

gem install git_stats

2.安装locate

yum install mlocate -y

updatedb

3.添加git_stats中文支持,目录在config/locales/下

find / -name 'git_stats'

cd /usr/local/ruby/lib/ruby/gems/2.4.0/gems/git_stats-1.0.17/config/locales

cp zh_tw_default.yml zh_default.yml

修改最上边的zh_tw为zh_cn其他不变

vim zh_default.yml

修改最上边的zh_tw为zh_cn其他不变

vim zh.yml

更新下索引

updatedb

4.为指定工程指定生成分析报告,这里随意下载一个工程,具体看要统计哪个,替换为自己的

git clone https://github.com/goodboy23/shell-script-collection

cd shell-script-collection

5.-o指定输出目录,会输出网页文件

git_stats generate -o /data/status7/ --language zh_cn

四.通过nginx把网页展示出来

1.安装nginx

cd shell-script-collection

./ssc.sh install nginx-1.8

2.配置nginx

vim /usr/local/nginx/conf/nginx.conf

 server {
listen 8888;
server_name localhost; location / {
root /data/status7;
index index.html index.htm;
}
}

3.启动nginx

nginx -t

nginx

4.浏览访问数据,这个只能单个项目,要是多个项目,要配置多个浏览路径

代码图形统计工具git_stats web的更多相关文章

  1. Mark一个代码量统计工具-Statistic

    安装方式 IDEA.Goland系列插件市场搜索Statistic 简单说明 统计纬度比较丰富 基本覆盖常见纬度,如代码行数,文件大小等,各指标取最大最小及平均值. 统计目录为当前项目目录 只有在当前 ...

  2. 【IDEA插件】—— 代码量统计工具Statistic

    1.下载 1.打开idea设置界面,选择 plugins标签 2.搜索“Statistic”插件,点击 install 3.重启IDEA 2.使用 1.菜单栏中找到view 2.在下层目录中找到Sta ...

  3. Python实现代码行数统计工具

    我们经常想要统计项目的代码行数,但是如果想统计功能比较完善可能就不是那么简单了, 今天我们来看一下如何用python来实现一个代码行统计工具. 思路:首先获取所有文件,然后统计每个文件中代码的行数,最 ...

  4. 容器技术之LXC WEB管理工具LXC WEB Panel

    前一篇博文中主要说了下,lxc容器在Linux上的简单管理,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12901493.html:今天我们来介绍下lxc的图 ...

  5. python 练习(一)代码统计工具的实现

    最近部门成立了一个python学习小组,旨在让大家在做项目中开始成长起来,于是老大就给布置了第一个小任务:代码统计工具,具体的需求如下: 需求: . 能够统计指定目录下C++程序的代码行数. . C+ ...

  6. svn代码统计工具的金额

    StatSVN介绍 StatSVN是Java写开源统计程序,从statCVS从移植.从能Subversion版本号来获取信息库,该项目开发的叙述性说明,然后生成各种表格和图表.例:时间线.针对每一个开 ...

  7. Python实现代码统计工具——终极加速篇

    Python实现代码统计工具--终极加速篇 声明 本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统计工具做对 ...

  8. Python实现C代码统计工具(四)

    目录 Python实现C代码统计工具(四) 标签: Python 计时 持久化 声明 运行测试环境 一. 自定义计时函数 1.1 整个程序计时 1.2 代码片段计时 1.3 单条语句计时 二. 性能优 ...

  9. Python代码统计工具

    目录 Python代码统计工具 声明 一. 问题提出 二. 代码实现 三. 效果验证 Python代码统计工具 标签: Python 代码统计 声明 本文将对<Python实现C代码统计工具(一 ...

随机推荐

  1. 微信小程序(九)

    小程序运行环境与基本架构 每个小程序都是运行在它所在的微信客户端上的,通过微信客户端给它提供的运行环境,小程序可以直接获取微信客户端的原生体验和原生能力. wxml视图文件和wxss样式文件都是对渲染 ...

  2. [年薪60W分水岭]基于Netty手写Apache Dubbo(带注册中心和注解)

    阅读这篇文章之前,建议先阅读和这篇文章关联的内容. 1. 详细剖析分布式微服务架构下网络通信的底层实现原理(图解) 2. (年薪60W的技巧)工作了5年,你真的理解Netty以及为什么要用吗?(深度干 ...

  3. python实现图片的ROI(region of interest)和泛洪填充

    目录: (一)ROI操作 (1)获取感兴趣区域(2)还原操作 (二)泛洪填充floodFill 正文: (一)ROI操作 感兴趣区(Region of Interest,ROIs) 是图像的一部分,它 ...

  4. 分享一下Eclipse中节省时间的技巧吧

    [初级技巧] ★★ 鼠标放在一个类名上面,会显示Javadoc.也可以通过屏幕下方的Javadoc面板来查看(你可以把它看成是MSDN的Java版). ★ 每个函数的第一行,左边有个圆圈,单击这个圆圈 ...

  5. [cf566C]Logistical Questions

    记$d(x,y)$为$x$到$y$的距离,$cost_{x}=\sum_{i=1}^{n}w_{i}d(x,i)^{\frac{3}{2}}$为$x$的代价 取$C$为足够大量,对于一条边权为$w$的 ...

  6. [gym102798F]Skeleton Dynamization

    考虑对于第$i$层$x$与第$i+1$层所对应的点$y$,点$p$在前$i$层中当且仅当$p$到$x$比$p$到$y$距离小 由此,考虑枚举第一层的一个点以及对应到第二层的边,通过bfs就可以确定第一 ...

  7. [bzoj3317]First Knight

    建立方程后直接高斯消元,再把0的区间找出来计算,就可以过(因为实际上这样的复杂度是5次的,且常数小)(当然这样的复杂度看上去并不太好,考虑优化)可以发现最后一行的概率都可以用上一行来表示,那么代入上一 ...

  8. 安装maven配置maven环境变量

    在官网下载maven的包 我们下载的是:apache-maven-3.5.2-bin.zip 3.解压缩maven的包到某个目录中 4.配置maven的环境变量 配置M2_HOME环境变量为maven ...

  9. 雪花算法对System.currentTimeMillis()优化真的有用么?

    前面已经讲过了雪花算法,里面使用了System.currentTimeMillis()获取时间,有一种说法是认为System.currentTimeMillis()慢,是因为每次调用都会去跟系统打一次 ...

  10. 洛谷 P3239 [HNOI2015]亚瑟王(期望+dp)

    题面传送门 感觉是道挺好的题,可惜当时没写题解来着的? 根据期望的线性公式,我们求出每个卡牌被发动的概率 \(q_i\),然后 \[ans=\sum\limits_{i=1}^np_id_i \] 于 ...