mitoteam/mt-howmany

命令行工具,用于统计项目源代码大小、文件数量、行数

1.2.0 2022-08-31 09:21 UTC

This package is auto-updated.

Last update: 2024-08-29 06:02:02 UTC


README

GitHub Version Packagist Version Packagist PHP Version Support

命令行工具,用于测量项目源代码大小、文件数量、行数、字符数。您可以排除供应商库、二进制文件、生成的代码等。

我们的目标是了解在各个项目中,我们亲手编写了多少代码字符、行数和页数。

安装

像往常一样将其添加为composer依赖项

composer require mitoteam/mt-howmany

或者您可以将依赖项手动添加到您的composer.json文件中。

使用方法

工具将标准composer二进制文件安装到vendor/bin/mt-howmany。因此,您可以直接从shell调用它

vendor/bin/mt-howmany

或在Windows下

vendor\bin\mt-howmany.bat

它在当前目录中查找配置。默认情况下,它递归地扫描当前目录,但您可以在配置中设置要扫描的具体路径。配置中还有许多选项。

您可以使用import选项从其他文件导入配置(例如,在项目之间共享一些公共部分)。

查看示例配置以获取详细信息:mt-howmany.example.yml

对于配置中未忽略的每个文件,工具都会计算行数、文件大小和字符数(使用symphony/string处理Unicode和多字节字符)。

扫描完成后,它会打印出收集到的数据和整个项目的最终总数。

您可以使用-v-vv参数来增加输出详细程度。

-v添加路径统计表(有助于了解从扫描中排除什么,以便只留下真正的代码)。

-vv此外还会打印出每个文件的完整数据,以便更好地了解数字的来源。

--single选项开启“单值模式”。程序将只打印一个值,没有其他输出(如果没有错误)。这对于CI、自动化等非常有用。可能的选项值:CHARSLINESPAGES。示例

mt-howmany --single=LINES

欢迎提出注释、错误报告、建议和pull requests。

输出示例

mt-howmany by MiTo Team
=======================

Working directory: /www/binardo.mt.test
Config file loaded: /www/binardo.mt.test/web/modules/custom/mtlapbase/mt-howmany.common.yml
Config file loaded: /www/binardo.mt.test/mt-howmany.yml

Results by file extension
=========================

 ----------- -------- ------------ ------------- -------
  Type        Size     Characters   Files Count   Lines
 ----------- -------- ------------ ------------- -------
  php         777Kb    782756       174           32225
  twig        50.0Kb   51145        26            1471
  scss        29.8Kb   30464        47            1886
  js          17.1Kb   17276        11            637
  yml         15.5Kb   15767        18            621
  sh          9.59Kb   9816         11            348
  po          3.69Kb   2965         1             164
  json        3.27Kb   3344         4             127
  module      3.10Kb   3176         2             131
  theme       3.06Kb   3133         2             123
  gitignore   2.23Kb   2280         2             82
  md          2.08Kb   1323         6             38
  txt         139      139          1             8
  htaccess    38       38           2             4
 ----------- -------- ------------ ------------- -------

Totals
======

Types count: 14
Paths count: 67
Files count: 307
Size: 916Kb
Characters: 923622
Lines: 37865
Pages by Characters: 257
Pages by Lines: 1052