统计Git
公司需求统计Mos代码行数
方法一:用git
#!/bin/bash read -p "输入你要统计mos的分支:" branch Mos_Project=(uusafe-prod-mos-app-inte uusafe-prod-mos-app-client uusafe-prod-mos-app-service uusafe-prod-mos-app-rest uusafe-prod-mos-base-inte uusafe-prod-mos-base-client uusafe-prod-mos-base-rest uusafe-prod-mos-base-service uusafe-prod-mos-device-inte uusafe-prod-mos-device-client uusafe-prod-mos-device-rest uusafe-prod-mos-device-service uusafe-prod-mos-wrapping-inte uusafe-prod-mos-wrapping-rest uusafe-prod-mos-wrapping-service uusafe-prod-mos-wrapping-client uusafe-prod-mos-gateway-inte uusafe-prod-mos-gateway-client uusafe-prod-mos-gateway-rest uusafe-prod-mos-gateway-service)
Users=(填写开发人员的git账号) Since_Today=`date +%F --date="-3 month"`
Until_Today=`date +%F`
echo -e "\033[34m当前时间:${Since_Today},三个月之前:${Until_Today}\033[0m" #创建一个临时目录
mkdir -p /tmp/statistics_git
for Project in ${Mos_Project[*]}
do
cd /tmp/statistics_git
git clone ssh://xiaojin@192.168.1.29:29418/${Project} -b ${branch} &>/dev/null
echo -e "\033[35m${Project} ${branch}:\033[0m"
cd ${Project}
for user in ${Users[*]}
do
git log --since==${Since_Today} --until=${Until_Today} --author="${user}" --pretty=tformat: --numstat | gawk -vuser="$user" '{ add += $1 ; subs += $2 ; loc += $1 - $2 ;if(NF==3)num+=1} END { printf "提交者: "user" 增加行数: %s 删除行数 : %s 总共行数: %s 修改文件数: %s \n",add,subs,loc,num }'
done
done rm -fr /tmp/statistics_git
方法二:用python工具(gitstats)统计
[root@platform_4 scripts]# cat android_statistics_gitsubmit.sh
#!/bin/bash read -p "输入统计Android分支的代码线:" branch git_judge(){
if [ $? -eq 0 ];then
echo "正在拉去分支${branch}...."
else
echo "${branch}分支不存在"
exit
fi
} main(){
mkdir -p /tmp/statistics_android
cd /tmp/statistics_android
echo '正在拉取代码......'
git clone ssh://xiaojin@192.168.1.29:29418/app/android/portal -b ${branch} &>/dev/null
git_judge
#统计生成tar包
cd /tmp/statistics_android/portal
echo '正在统计代码.....'
/usr/local/src/gitstats/gitstats . android_${branch} &>/dev/null
mkdir -p /opt/git_software/android
tar zcf /opt/git_software/android/android_${branch}_`date +%F`_git.tar.gz android_${branch}
rm -fr /tmp/statistics_android
echo "文件生成路径:/opt/git_software/android/android_${branch}_`date +%F`_git.tar.gz"
} main
统计Git的更多相关文章
- 统计git代码提交量
以下是我写的一个脚本,可以统计在某个项目中,自己修改代码的行数,包括增加多少行,删除多少行. 可以统计当天,24小时内或全部时间内.使用时需要把代码中的author对应的值换成自己的名字. 代码如下: ...
- 在windows 上统计git 代码量
1 需要系统安装 git + gawk git 安装自行百度 gawk 到官网下载 http://gnuwin32.sourceforge.net/packages/gawk.htm 1.2 下载好后 ...
- (转)通过gitlab统计git提交的代码量
git的代码量大多数都是根据命令行统计,或者根据第三方插件统计.但是都不满足我的需求,因为我们代码都由gitlab管理,于是想到了通过gitlab暴露出来的接口获取数据. 第一步,生成私钥 登录你的g ...
- windows调起git bash执行sh脚本定时统计git仓库代码量
本来挺简单的一个东西硬是弄了两天 心力交瘁 找了网上不少资料 整理一下发给大家 首先是统计每个人的代码量的git命令 在网上找的 我这里做了以下修改 git log --format='%aN'|so ...
- GitStats - 统计Git所有提交记录工具
如果你是研发效能组的一员或者在从事 CI/CD 或 DevOps,除了提供基础设施,指标和数据是也是一个很重要的一环,比如需要分析下某个 Git 仓库代码提交情况: 该仓库的代码谁提交的代码最多 该仓 ...
- 统计git提交代码量
# a新增行数,d删除行数 git log --author="`git config --get user.name`" --pretty="%H" --a ...
- 【转】Git 代码行统计命令集
查看git上个人代码量 git log --author="username" --pretty=tformat: --numstat | awk '{ add += $1; su ...
- git代码统计
1.统计一段时间的代码量 git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; gi ...
- [Git] git代码统计
copy : https://www.cnblogs.com/liyropt/archive/2012/12/31/2841053.html 命令行 查看git上的个人代码量: git log --a ...
随机推荐
- 广告URL
讨厌的csdn 广告,百度搜索了一次,csdn cookie广告追了你好几年还有... 把下面的url 重定向127.0.0.1 ,只记录了百度广告,部分阿里的广告,其他还未记录 虽然也用Adblo ...
- C# 判断文件夹与文件是否存在
//在上传文件时经常要判断文件夹是否存在,如果存在就上传文件,否则新建文件夹再上传文件 判断语句为 if (System.IO.Directory.Exists(Server.MapPath(&quo ...
- SQL SERVER 数据库跨服务器备份
原文:https://www.cnblogs.com/jaday/p/6088200.html 需求介绍:每天备份线上正式库并且把备份文件复制到测试服务器,测试服务器自动把数据库备份文件还原. 方案介 ...
- 03-CSS颜色、文本、字体、边框、背景
# Css颜色,文本字体 ## css颜色表示法1.颜色名表示,比如:red 红色,gold 金色 2.16进制数值表示,比如:#ff0000 表示红色,这种可以简写成 #f00 3.RGB颜色: 红 ...
- Javascript 原型链之原型对象、实例和构造函数三者之间的关系
前言:用了这么久js,对于它的原型链一直有种模糊的不确切感,很不爽,隧解析之. 本文主要解决的问题有以下三个: (1)constructor 和 prototype 以及实例之间啥关系? (2)pro ...
- 解决 myEclipse与tomcat 不同步的问题
在我们使用eclipse做web调试的过程中,一般只需要在eclipse修改程序,然后在浏览器刷新就能发现文件更改,今天突然发现保存后不能更改了.1.检查tomcat中的文件发现文件没有更新.2.检查 ...
- 【改】utf-8 的去掉BOM的方法
最近在测试中发现,linux系统中导出的文件,有记事本打开另存为或者保存后,再次导入进linux系统,发现失败了,对比文件内容,没发现区别,打开二进制文件对比发现,文件头部多了三个字符:EF BB B ...
- tac 反向显示文件内容
1.命令功能 tac是cat的反向拼写,功能是反向显示文件内容. 2.语法格式 tac option file 3.使用范例 [root@localhost chu]# cat test.txt ...
- [Tvvj1391]走廊泼水节(最小生成树)
[Tvvj1391]走廊泼水节 Description 给定一棵N个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树.求增加的边的权值总和最小是多少. 完全图:完 ...
- CF 82 D.Two out of Three
前言 全网唯一不同题解 设 \(f[i][j]\) 表示第 \(i\) 次选取留下来的数是 \(k\) 的最小花费 枚举前面的留下来的点 \(k\) 当前能留下的点只有 \((2*i),(2*i+1) ...