0

我使用这个命令用 cloc 计算行数:

cloc --ignore-case --ignore-whitespace --diff src-copy/file.c src/file.c

它告诉我我添加了 103 行。

当我用 'git diff' 计算同一个文件时,它告诉我添加了 136 行:

git diff --stat --ignore-blank-lines -w src-copy/file.c src/file.c

如何验证 cloc 正确计算行数?是否有任何选项可以输出两个文件的实际差异,以便我可以直观地检查和理解为什么两个程序的结果不匹配?

4

1 回答 1

1

您可以通过从文件中删除 cloc 注释然后对纯代码文件进行视觉差异来了解 cloc 认为两个文件之间的不同之处:

  cloc --strip-comments nc --original-dir src-copy/file.c src/file.c
  vimdiff src-copy/file.c.nc src/file.c.nc

(或用vimdiff您选择的工具替换)。这至少会消除评论差异。diff 工具标记的任何内容都应被 cloc 识别为代码更改计数的差异。

cloc 没有显示差异比较内部结构的选项。 https://github.com/AlDanial/cloc/issues/152展示了一种在工具中添加调试语句以显示其中一些的方法,但输出并不漂亮。

于 2017-02-10T17:06:10.787 回答