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

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

大型需要本地。

在线统计

有一些工具提供针对 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 日
如果觉得我的文章对你有用,请随意赞赏