繁体   English   中英

如何使diffstat计数被删除并将新添加的文件计入LOC计数?

[英]How to make diffstat count removed and newly added files to LOC count?

diff -ur dir1 dir2 | diffstat

这类似于git diff --stat ,但是diffstat忽略“仅在dir1中”和“仅在dir2中”文件,而git diff将其添加到删除和插入计数中。 有没有办法让diffstat做同样的事情?

diff -ur --exclude=".git" dir1/ dir2/ | grep -i "only in dir1" | awk '{print $3 $4}' | sed 's/\:/\//' | xargs cat | wc -l

我将这个问题的输出与diffstat命令在问题中吐出的deletes(-)计数相加,以获取实际的删除数,类似于inserts(+)的计数。

更简单:

diff -urN dir1/ dir2/ |diffstat

使用GNU diff的-N选项,例如, 比较目录时

如果仅存在一个文件,则diff通常不显示其内容; 它仅报告一个文件存在,而另一个文件不存在。 您可以使diff行为就像丢失的文件为空一样,以便输出实际存在的文件的全部内容。 (根据丢失的文件位于第一个位置还是第二个位置,它以插入还是删除的形式输出。)为此,请使用--new-file-N )选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM