mnapoli / gitstats
通过迭代git提交来收集统计数据
0.1.1
2018-01-10 10:48 UTC
Requires
- php: ^7.0
- mnapoli/silly: ~1.6
- php-di/php-di: ~5.4
- symfony/filesystem: ~3.1|~4.0
- symfony/yaml: ~3.1|~4.0
This package is auto-updated.
Last update: 2024-09-19 21:24:15 UTC
README
安装
- 克隆此仓库
- 安装Composer依赖
- 将
gitstats
链接到您的/usr/local/bin
:ln -s /home/<you>/code/gitstats/gitstats /usr/local/bin/gitstats
或者您也可以全局安装Composer包(composer global require mnapoli/gitstats
)
使用方法
- 在当前目录中添加
.gitstats.yml
文件
tasks: 'Commit message': "git log -1 --pretty=%B | head -n 1" 'Commit author': "git log -1 --pretty=%an" 'Number of files': "find . -type f | wc -l | xargs" 'Number of directories': "find . -type d | wc -l | xargs"
- 运行应用程序
$ gitstats run <git-repository-url>
仓库将被克隆到临时目录中。所有任务都将针对每个提交执行。确保仓库不包含修改。
输出格式为CSV
Commit,Date,Number of files,Number of directories
d612a29fae3b0f625b9be819802e93214d4eecd9,2016-08-31T12:55:38+02:00,61,28
497f22a27896d146a35660f452eba24d3a14db3f,2016-08-31T12:53:01+02:00,61,28
fc0646f236e6bb0a10b14a67424f932f28eb1062,2016-08-26T19:29:40+02:00,62,28
221528e63d7aac3aa247dfde191b5f6c380cbb7e,2016-08-25T01:28:55+02:00,62,28
...
您可以将输出写入文件
$ gitstats run <git-repository-url> > results.csv
然后您可以将其导入数据库或使用Excel或其他软件打开。
MySQL
您可以将结果输出为SQL查询,用于插入/更新MySQL表
$ gitstats run <git-repository-url> --format=sql | mysql -u <user> -p <table>
限制提交数
您可以使用--max
参数限制要处理的提交数量
# Process only 100 commits $ gitstats run <git-repository-url> --max=100
显示进度
您可以使用--progress
参数在stderr上显示进度条。当使用该参数时,将输出重定向到文件或另一个命令是有意义的
$ gitstats run <git-repository-url> --progress > file.csv