如果我用git log <commit-id> --stat
执行git diff
或--stat
,则会得到类似的内容:
myproj/src/__main__.py | 1 +
myproj/{ => src}/utils.py | 0
myproj/{ => src}/web.py | 31 ++++-
3 files changed, 29 insertions(+), 3 deletions(-)
每个文件旁边的数字是:number_of_inserts + number_of_deletes
。这不是我想要的。我想知道为每个文件添加和删除的行数(例如+28 -3
而不是31
)。
--numstat
代替--stat
,但是--numstat
不会产生直方图。 我也知道我可以使用diffstat
。例如,diffstat
:
git diff <commit-id> | diffstat -f4 -C
但是在这里我丢失了有关文件移动/重命名(例如myproj/src/__main__.py | 1 1 0 +
myproj/src/web.py | 31 28 3 ++++-
2 files changed, 29 insertions(+), 3 deletions(-)
)的信息。
因此,如何获得类似于myproj/{ => src}/web.py
的输出,但要获得有关每个文件添加的行数和删除的行数的信息?
--stat
输出以下内容:
git log --numstat --stat --oneline