IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Git代码统计 -> 正文阅读

[开发工具]Git代码统计

1.目的

统计代码行数,用于质量把控,计算每周/月 贡献值、BUG率等各项指标

2.实战

2.1 前置工作

  • 下载代码(至少应有代码的访问权限guest)
  • 本地安装git客户端,下载地址
  • 打开git bash
  • 进入统计项目的根目录,
    • 如 把demoProject项目下载至D盘temp目录下
    • 在git bash命令进入
xxx@xxxxx MINGW64 ~
$ cd /d
xxx@xxxxx MINGW64 ~
$ cd /d/temp/demoProject

前缀目录即变成如下

xxx@xxxxx MINGW64 ~ /d/temp/demoProject
$

2.2 统计示例

2.2.1 按日期区间统计

git bash中输入以下命令

git log --pretty=tformat:  --since ==2021-08-01 --until=2021-09-20 --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 : 日期区间,详情见

结果:

added lines: 20633, removed lines: 7160, total lines: 13473

其他说明

修改日期,调整统计区间

2.2.2 按提交用户

git bash中输入以下命令

git log --author="user1" --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 + $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }'

结果:

added lines: 20632 removed lines : 7160 total lines: 27792

其他说明
修改用户名,调整统计区间

2.2.3 按commit/tag统计

git bash中输入以下命令

git log tag1..tag2 --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 + $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }'

结果:

added lines: 18219 removed lines : 0 total lines: 18219

其他说明
修改tag,调整统计区间

2.2.4 组合:按日期区间 + 提交用户统计

git bash中输入以下命令

git log tag1..tag2 --author="user1" --pretty=tformat:  --since ==2021-08-01 --until=2021-09-20 --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -

结果:

added lines: 18219, removed lines: 0, total lines: 18219

其他说明
修改日期 / 用户,调整统计区间


3.参考

1.官方log文档
2.git中统计代码行数
3.git工具统计项目的代码行数

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-09-23 11:39:21  更:2021-09-23 11:41:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:57:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码