有两种,一种是在线工具,一种是拉取到本地统计。

公开的中小型开源从仓库可以用在线工具,离线的私有或

大型需要本地。

在线统计

有一些工具提供针对 github 等开源公共仓库直接的代码统计:

本地统计

推荐以下两种:

tokei 似乎更快一点。

➜  develop tokei PracticeDev/                                                                                                                                                                                      (base) 
===============================================================================
 Language            Files        Lines         Code     Comments       Blanks
===============================================================================
 C                      24         5810         4020         1079          711
 C Header               27        11399         8802          910         1687
 C Shell                 1           27           12            5           10
 C++                    61         6960         5622          533          805
 C++ Header              2          403          282           48           73
 Dockerfile              1           15           11            0            4
 Fish                    1           69           42           14           13
 Go                      7          578          431           42          105
 INI                     1            6            3            2            1
 JavaScript              6          660          574           56           30
 JSON                    2        15318        15318            0            0
 Makefile                2           57           36            4           17
 Markdown                2           94            0           76           18
 Perl                    5           74           51           10           13
 PowerShell              1          247          108          106           33
 Python               1051       413682       338202        26114        49366
 SVG                     1            1            1            0            0
 SWIG                    1        33194        23001            0        10193
 Plain Text             20          997            0          952           45
===============================================================================
 Total                1216       489591       396516        29951        63124
===============================================================================
➜  develop cloc PracticeDev/                                                                                                                                                                                       (base) 
    1320 text files.
    1093 unique files.                                          
    1354 files ignored.

github.com/AlDanial/cloc v 2.00  T=1.68 s (651.2 files/s, 267155.8 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Python                         929          53378          70447         250328
SWIG                             1          10193              0          23001
JSON                             2              0              0          15318
C/C++ Header                    22           1648            912           8186
C++                             57            690            460           4983
C                               24            755           1035           4020
Text                            20             45              0            952
JavaScript                       6             38             51            571
Go                               7            105             42            431
XML                              9              0              0            226
PowerShell                       1             49             90            108
Markdown                         2             18              7             69
Perl                             5             13              7             54
Fish Shell                       1             13             14             42
make                             2             17              4             36
C Shell                          1             10              5             12
Dockerfile                       1              4              0             11
Ruby                             1              2              4              6
INI                              1              1              2              3
SVG                              1              0              0              1
-------------------------------------------------------------------------------
SUM:                          1093          66979          73080         308358
-------------------------------------------------------------------------------

还有更多选择:

工具实现语言支持统计语言相对性能特殊特性
clocPerl支持超过100种编程语言中等可以忽略空行、注释行,可以对比两个版本的代码差异
SLOCCountC++C, C++, Java, Perl, Shell等较高可以估算项目成本,支持多种输出格式如CSV、XML等
OhcountC支持超过70种编程语言中等支持多种语言混编的统计,提供了许可证检测功能
TokeiRust支持超过150种编程语言较高可以并行处理文件,性能优秀
goclocGo支持超过100种编程语言较高性能优秀,可以处理大型项目

以上信息仅供参考,具体性能和特性可能会因为工具版本的更新而有所变化。

References

最后修改:2024 年 09 月 05 日
如果觉得我的文章对你有用,请随意赞赏