git_stats是仓库代码统计工具,今天我们要求用git_stats工具做项目的代码统计,也是一步一坑的找到了一些方法,在这里记录一下

Window环境安装与使用

git_stats可以在windows和linux使用,但是集成方式有点不太一样,我目前尝试的是win版本的,在这里就先记录win版本的安装及使用,Linux环境的后期需要可以再补充

gitstats 依赖 Git 、Python 以及Gnuplot。

版本说明:

-python(>=2.6.0),在这里作为脚本进行执行

-Git( >= 1.5.2.4 ) 分布式版本控制系统

-Gnuplot ( >= 4.0.0 ) 进行画图的工具

1.安装python

1.1.下载及安装

由于只支持Python2,可以到官网https://www.python.org/downloads/release/python-2713/进行下载获取python的win下的安装包。

此处安装的是python 2.7.14

为什么最好是python2?

gitstats 是基于python2.x版本进行开发的一个开源的程序项目,所以需要安装python2.x版本的解释器,由于python的特殊性,gitstats中的某些代码在python3.x中不能运行。会出现语法错误。

如果有多个python版本时,如何操作?

将python的2.x版本的安装目录下的python.exe文件修改为python2.exe,以免多个python互相冲突; 在环境变量path中增加python2的文件路径

1.2配置环境变量

安装完以后需要配置环境变量,例如安装在D:\Python27 ,则在环境变量path中增加D:\Python27.

win10:此电脑-属性-高级系统设置-环境变量:找到path,添加上python本地的安装路径

1.3验证:
查看python安装是否成功:使用win+R,输入cmd,运行python -version,出现版本号,或输入python,显示版本号 
我的是Python 2.7.14

2.安装git_stats

 可以从https://github.com/hoxu/gitstats下载gitstats

 下载完成后,需要进入gitstats文件夹下面,将gitstats文件复制一份并命名或者直接重命名为gitstats.py

3.安装Gnuplot

3.1下载安装包

 可以到https://sourceforge.net/projects/gnuplot/files/gnuplot/5.0.6/, 选择最新的win版本下载即可。

 3.2配置环境变量

 根据你的安装目录直接配置环境变量即可,例如直接将E:\gnuplot\bin添加到path中即可.

 查看是否安装成功:使用win+r,输入cmd,运行gnuplot,出现下面的输出就是成功啦 
 

4.生成文档方法

方法1:

我们切换到git项目根目录下,右键选择git bash here,使用的命令格式
如:python [gitstats.py路径] [git库路径(git项目根目录)] [输出结果路径],
我的命令就是下面这个python '/d/Program Files/gitstats-master/gitstats.py' . stats,
其中.表示当前目录,stats表示生成到当前的stats目录里面. 
 
但我用在git中试没成功,我操作成功的是用黑窗口操作的,就是下面这个方法

方法2:
1.打开黑窗口,启动cmd
2.进入gitstats路径位置 cd 文件路径

3.创建gitstats的输出文件夹

python gitstats.py “gitstats文档库路径” “输出文件夹路径

举例: python gitstats.py  D:\Program Files\IDEA     D:\results

或者直接在cmd下操作

python gitstats.py路径  ' gitstats文档库路径'  '输出文件夹路径'

举例: python D:\Program Files\gitstats-master\gitstats.py  D:\Program Files\IDEA     D:\results

哪一种都可以,输入成功后点击回车

4.展示数据

windows里面展示数据就比较方便了,只要你有浏览器就可以

进入输出文件夹stats路径,点击index.html,打开方式选择浏览器进行展示数据,即可获得项目的基本数据和commit提交记录的流图

当然也可以切换成不同的tab进行查看

至于具体的使用方法,随便点两下就明白了,这里就先不多说了.一般我经常用到的就是ActivityAuthors这两个.

遇到的问题:

问题1:wc不是内部命令

原因:经查找发现是git\usr\bin下的可执行文件没有被加入全局变量,导致文件在编译的过程中,没能识别出wc程序,

解决:找到git目录下的usr下的bin目录,放到环境变量path中

问题2:刚刚只解决了wc的问题,git不是内部命令 的问题也不能忽视

解决方法:①找到安装git的位置,然后在该目录的子目录下分别找到git-core、bin 两个目录,我的安装在了D盘,所以两个目录分别是:如图

此次只遇到的是这两个问题,配置了环境变量后,关闭黑窗口,再次按上面步骤操作,执行成功

问题3:这个问题是其他同事遇到的,也在这里记录一下,

是因为在之前使用Git bash的时候,不需要把Git bash 的可执行文件加入path的环境变量

												

git_stats安装及使用的更多相关文章

  1. 使用git_stats 统计分析git 仓库代码&& 集成webhook

      前几天写过一个使用gitstats 统计分析代码的,但是那个因为开发的问题,对于直接和容器集成是有问题的,统计需要进入容器执行 命令,对于自动构建的还不是很方便,所以使用了git_stats 项目 ...

  2. 代码图形统计工具git_stats web

    目录 一.简介 二.安装ruby 三.配置git_stats 四.通过nginx把网页展示出来 一.简介 仓库代码统计工具之一,可以按git提交人.提交次数.修改文件数.代码行数.注释量在时间维度上进 ...

  3. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  4. 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法

    如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...

  5. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

  6. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  7. gentoo 安装

    加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...

  8. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  9. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

随机推荐

  1. 【python】UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte

    header中干掉 "Accept-Encoding": "gzip, deflate, br", 注意:

  2. 【Mysql】细节补充,约束、索引等

    约束: 显示建表语句:show create table 表名 查询表中的约束:SELECT * FROM information_schema.`TABLE_CONSTRAINTS`  where ...

  3. 跟着大彬读源码 - Redis 2 - 服务器如何响应客户端请求?(上)

    上次我们通过问题"启动服务器,程序都干了什么?",跟着源码,深入了解了 Redis 服务器的启动过程. 既然启动了 Redis 服务器,那我们就要连上 Redis 服务干些事情.这 ...

  4. 浅谈 JavaScript 中 Array 类型的方法使用

    前言:Array 类型是 JavaScript 中除了 Object 类型以外最常用的类型. 一.创建数组 JavaScript 中的数组与其他语言中的数组有着很大的区别.例如Java.PHP等语言中 ...

  5. c++字符数组

    题目描述 题目描述 输入一个英文句子(长度不会超过100),和他的长度,统计每个字母出现的个数. 输入 第一行包括一个整数,表示句子的长度,长度不会超过100.数字后可能会有多余的无效字符 请gets ...

  6. 广告过滤器 Adguard Pre v6.4.1814 Lite V2 简约绿色版

    下载地址:点我 基本介绍 当你在浏览网页的时候总是弹出广告是不是非常的不爽,小编为伙伴们提供了Adguard Pre简约绿色版,一款专业的广告过滤器.Adguard Pre简约绿色版可以帮助伙伴们完美 ...

  7. Java项目案例之--封装的实例

    Java项目案例之---封装的实例 有一个专业类,有一个专业对象,专业名称:计算机科学与技术,专业编号:J001,专业年限:4,对年限添加约束,如果输入小于0,则默认为0,否则显示输入的值 有一个学生 ...

  8. 第八章 Fisco Bcos 国密版本的部署、控制台搭建、合约的部署、sdk 调用

    鉴于笔者以前各大博客教程都有很多人提问,早期建立一个技术交流群,里面技术体系可能比较杂,想了解相关区块链开发,技术提问,请加QQ群:538327407 参考资料 证书说明:https://mp.wei ...

  9. 与某公司CTO的一次闲聊

    这是一次与某公司CTO的交流沟通,收获不少,记录下分享给大家,其中个别词句有自己增改成分. 既然是领导,就要学会画饼,画图的都是底下干活的. 管理好别人的预期,并能兑现承诺,不能只靠画大饼忽悠.针对某 ...

  10. windows切换mac遇到的问题

    1. 前端代码需要安装npm包 所以需要对整个文件夹都赋予管理员权限 2. 在npm i的时候如果权限不足 查看是哪一行调用了哪个文件夹,赋予权限 3. Dsp-fe 本地环境 除了需要配置host  ...