我可以通过git历史记录查看包含某些扩展名的文件数吗?

时间:2016-12-30 10:39:16

标签: git

在我和我的团队目前工作的项目中,当我们将代码迁移到TypeScript时,有.js个文件被视为过时而支持.ts个文件。

由于项目很大,我们无法一次将所有文件转换为TypeScript,我们正在逐步完成。

要了解动态,我正在考虑如何跟踪项目中.js.ts文件的数量,然后将收集的数据可视化为图表。

是否有可能以某种方式扫描所有历史记录并获得每次提交中具有一些扩展名的文件的数量?

1 个答案:

答案 0 :(得分:0)

解决方案是使用Cloc

  

调用cloc来计算源文件,目录或档案。

以下是GitHub的例子

prompt> cloc gcc-5.2.0/gcc/c
      16 text files.
      15 unique files.
       3 files ignored.

https://github.com/AlDanial/cloc v 1.65  T=0.23 s (57.1 files/s, 188914.0 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
C                               10           4680           6621          30812
C/C++ Header                     3             99            286            496
-------------------------------------------------------------------------------
SUM:                            13           4779           6907          31308
-------------------------------------------------------------------------------

您可以在git目录中执行此操作,并查看每种语言的文件数。当然,您需要能够列出每次提交的文件。

这需要一个好的脚本,可能使用日志来查看更改以查找文件

git log --name-status -10 path/to/dir

source