git 按时间打印所有成员代码提交:

git log --since ==2018-01-01 --until=2018-12-31 --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 + $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -; done

  

单个成员查询:

git log --since=2018-01-01 --until=2018-12-31 --author="DENA\chuanyong.zhu" --pretty=tformat: --numstat | awk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' -

  

以上是git命令,以下介绍一下gitstats

1.example

2.安装

a.安装gitstats
git clone git://github.com/hoxu/gitstats.git b.安装brew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" c.安装gnuplot画图程序
brew install gnuplot d.运行命令
cd xxx/gitstats
python gitstats Documents/gitxxx Documents/gitoutput xxx/gitstats 为gitstats的本地clone地址
Documents/gitxxx 为本地代码仓库路径
Documents/gitoutput 为生成报表位置

  

 更多:

 https://segmentfault.com/a/1190000008542123

git仓库按时间、成员等维度分析统计的更多相关文章

  1. 给你的git仓库瘦身

    很久没有写博客了,最近遇到了一个git问题,比较典型,记录下来与大家分享. 我们使用git版本控制的时候享受了很多便利,不管是代码合并,分支提供给我们的并发,但我们也往往忽略了每次提交之后在我们本地项 ...

  2. 批量修改git仓库地址脚本

    前言   公司的代码都存放在自己搭建的gitlab上面.之前由于老板升级gitlab.导致下面有个叫做"api"的groups无法访问.通过无所不能的谷歌才知道.在gitlab在某 ...

  3. 使用gitbase 分析git 仓库代码

      gitbase 是一个基于golang 开发的开源git 仓库sql 接口查询引擎,基于此工具,我们可以方便的分析git 仓库代码的情况 而且可以基于源码的分析,还是很强大的 安装 直接使用编译的 ...

  4. git仓库个人和企业版新增仓库和成员

    1.首先要在本地安装一个git安装包,比如安装完之后路径是在      D:\Program Files (x86)\Git\bin\git.exe 2.访问git网址  https://gitee. ...

  5. git 仓库拆分方案对比

    此文已由作者张磊授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 前言 git 拆分仓库在网上已有的案例上来看,分为 submodule 和 subtree. 还有基于这两个方 ...

  6. 多本地代码工作点更新到2个远端GIT仓库

    摘要:本文介绍了笔者多个本地工作节点(地方)的多台电脑(PC/笔记本电脑)同步源码到2个远端的GIT(一个GITHUB国外强制公开,一个oschina国内可不公开). 作者:太初 转载说明:请指明原作 ...

  7. xcode 版本控制推送代码到远程git仓库的步骤

    一 代码推送到远程git仓库 1.在git中建立一个下项目(假设项目名称为->Mygit) 2.在xocde上新建一个测试项目(假设项目名称为GitTest) 3.打开电脑终端: 1)首先利用终 ...

  8. svn迁移到git仓库并保留commit历史记录

    svn迁移到git仓库并保留commit历史记录 最近在做svn迁移到gitlab,由于之前一直是由svn做版本控制.最简单的方式是将svn的内容export出来,然后添加到gitlab即可.但是,如 ...

  9. 建立你的第一个 Git 仓库

    虽然 Git 确实是被许多重要软件选作版本控制工具,但是并不是仅能用于这些重要软件;它也能管理你购物清单(如果它们对你来说很重要的话,当然可以了!).你的配置文件.周报或日记.项目进展日志.甚至源代码 ...

随机推荐

  1. Ubuntu 16.04系统下开机提示“无法应用原保存的显示器配置”

    开机启动Ubuntu时,提示以下错误,部分截图如图: 解决方法: 按住Ctrl+Alt+T开启终端,输入rm .config/monitors.xml,回车,然后重启Ubuntu即可解决:如图

  2. GPU对数据的操作不可累加

    我想当然的认为GPU处理数据时可以共同访问内存,所以对数据的操作是累加的. 事实证明:虽然GPU多个核可以访问同一块内存,但彼此之间没有依赖关系,它们对这块内存的作用无法累加. 先看代码: #incl ...

  3. [吐槽]我为什么讨厌C++

    最近在改currennt的代码,我擦擦擦,实在是忍不了了 C++最恶心的地方在于指针引用与面向对象混用!!TMD各种不匹配 举例: template <typename TDevice> ...

  4. System.Web.UI.Page.Cache 页面 缓存 清除

    这个也是网上查询到方法,不错记录一下! /// <summary> /// 清空所有的Cache /// </summary> public static void Clear ...

  5. 【转】.NET Framework、C#语言、IDE、CLR 版本历史及其差异

    原文地址: http://www.cnblogs.com/PurpleCow/archive/2012/06/17/2552780.html http://www.cnblogs.com/lhking ...

  6. Oracle 分析函数的使用(主要是rollup用法)

    分析函数是oracle 8.1.6中就引入的一个全新的概念,为我们分析数据提供了一种简单高效的处理方式.在分析函数出现以前,我们必须使用自联查询,子查询或者内联视图,甚至复杂的存储过程实现的语句,现在 ...

  7. IRC and security tools

    login:::   /msg NickServ identify <password>. join:::   /join #metasploit 浏览器: Tor操作系统: Tails加 ...

  8. textField placeholder颜色,位置设置

    自定义textField继承自UITextField 重写 - (CGRect)placeholderRectForBounds:(CGRect)bounds _phoneTF.font = HPFo ...

  9. 07_Linux 终端命令格式

    Linux 终端命令格式 目标 了解终端命令格式 知道如何查阅终端命令帮助信息 01. 终端命令格式 command [-options] [parameter] 说明: command:命令名,相应 ...

  10. 移除wordpress版本信息 删除无用信息

    wordpress页面头部有很多无用的信息,像wordpress版本信息.feed等,如何把它们删除或不让它们先是出来呢? 将下面的代码加入到当前主题的functions.php,可以适当酌情保留 & ...