是否有一种方法可以查看分支中哪些文件发生了更改?


当前回答

真不敢相信有这么多方法可以做到。我使用之前有人发布的whatchanged,只是带有以下参数:

git whatchanged --name-only --pretty="" origin..HEAD

这只列出了文件名,并且只列出了在当前分支上更改的文件名。

其他回答

我使用grep,所以我只得到diff -git的行,这是文件路径:

git diff branchA branchB | grep 'diff --git'
// OUTPUTS ALL FILES WITH CHANGES, SIMPLE HA :)
diff --git a/package-lock.json b/package-lock.json

你所要做的就是:

git checkout <notMainDev>
git diff --name-only <mainDev>

这将只显示两个分支之间不同的文件名。

git diff --name-only master...branch-name

我们要与之进行比较。

扩展@twalberg和@iconoclast,如果你因为任何原因使用cmd,你可以使用:

FOR /F "usebackq" %x IN (`"git branch | grep '*' | cut -f2 -d' '"`) DO FOR /F "usebackq" %y IN (`"git merge-base %x master"`) DO git diff --name-only %x %y

是什么

git diff --name-only HEAD~1