git代码统计gitstats-生成详细html报告
git 2019-08-19 13:08:20

 1、 各环境下安装gitstats

http://gitstats.sourceforge.net/

如使用apt-get安装,先执行apt-get update 升级

再执行:

C/C++ Code复制内容到剪贴板
  1. apt-get install gitstats  

 

2、 使用gitstat工具分析code目录(git clone的目录)代码生成结果到result文件夹中

C/C++ Code复制内容到剪贴板
  1. gitstats code result  

result下生产html分析报告

 

分析结果:

常规的统计:文件总数,行数,提交量,作者数。

活跃性:每天中每小时的、每周中每天的、每周中每小时的、每年中每月的、每年的提交量。

作者数:列举所有的作者(提交数,第一次提交日期,最近一次的提交日期),并按月和年来划分。

文件数:按日期划分,按扩展名名划分。

行数:按日期划分。

 


 

git直接统计代码行数

1、统计所有代码行数:

C/C++ Code复制内容到剪贴板
  1. git log --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 }'  

 

2、统计时间段内代码行数

C/C++ Code复制内容到剪贴板
  1. git log --since=2023-01-01 --until=2024-01-01 --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 }'  

–since:开始时间

–until:结束时间

 

3、统计所有用户提交代码行数

C/C++ Code复制内容到剪贴板
  1. git log --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  

 

4、统计所有用户指定时间段内提交代码行数

C/C++ Code复制内容到剪贴板
  1. git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --since ==2023–01-01 --until=2024-01-01 --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  

 

5、统计指定用户指定时间段内提交代码行数

C/C++ Code复制内容到剪贴板
  1. git log --author="YY" --pretty=tformat: --since=2023-01-01 --until=2024-01-01 --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }'  

–author:用户名

–since:开始时间

–until:结束时间

 

 

 

 

本文来自于:http://www.yoyo88.cn/study/git/447.html

Powered by yoyo苏ICP备15045725号