How to find the number of files changed from one c

2020-06-07 01:58发布

I am working on a git repository which contains huge number of files changed b/w one commit to another, how to extract the number of files changes b/w commits.

标签: git
5条回答
Juvenile、少年°
2楼-- · 2020-06-07 02:34

In windows:

git whatchanged -1 --format=oneline | find /v /c ""

The important windows-specific piece is that you must replace the wc command used in other solutions with this:

  | find /v /c ""
查看更多
SAY GOODBYE
3楼-- · 2020-06-07 02:36

The git whatchanged tool shows you a summary of files that were modified. By itself it lists all commits, but you can also limit it to just the recent n commits:

git whatchanged -1

To count files:

git whatchanged -1 --format=oneline | wc -l

See git help whatchanged for details.

查看更多
祖国的老花朵
4楼-- · 2020-06-07 02:50
git show --stat

This gives the list of files changed like this:

1 file changed, 1 insertion(+), 1 deletion(-)

Optionally you can add the commit code if you don't want to get the information from the latest.

git show --stat {commit code without brackets}
查看更多
家丑人穷心不美
5楼-- · 2020-06-07 02:52

use this:

git log --oneline --name-status <HASH> -1

eg:

$ git log --oneline --name-status bb3ae49 -1
M       .vim/spell/en.utf-8.add
M       .vim/spell/en.utf-8.add.spl

this works just like

git whatchanged --oneline --name-status <HASH> -1
查看更多
趁早两清
6楼-- · 2020-06-07 02:58

Apart from the above listed methods you can do this too:

git diff HEAD^..HEAD --name-only - will give the list of files changed between HEAD and one revision before HEAD (HEAD^). You can replace HEAD^ with a SHA1 of the "from" commit and HEAD with the SHA1 of the "to" commit:

git diff <SHA1-of-from-commit>..<SHA1-of-to-commit> --name-only

So if you pipe the output to wc -l it should give you the number of files changed between commits.

查看更多
登录 后发表回答