我最近带了很多提交的分支,并将它合并回我的主分支。如果我需要返回并查看因合并而添加或删除了多少行,我将如何进行此操作?
答案 0 :(得分:17)
git diff
有一个--shortstat
选项,在合并之前会有用,因为您可以从主分支中完成git diff --shortstat ..branch/to/merge
。
如果合并不是快进,那么您将生成合并提交。这将包含两个分支的父信息。您可以使用这些来执行git diff --shortstat parent1..mergecommit
以显示从第一个父(您的主分支)移动到合并提交结果时发生的更改。
如果合并是快进的,那么您只需要知道合并之前分支的sha1是什么,并将其与当前进行比较。你可以从git reflog
得到它。
答案 1 :(得分:13)
git diff --shortstat commit1 commit2
应该给你你想要的东西:
git diff --shortstat 8fcb60bebc18b9ee4a5a0a86d41e8ecf954b8c99 0214060c21f31f9b54446dde6b6e48901e6a144d
5 files changed, 182 insertions(+), 225 deletions(-)
有关详细信息,请参阅git tricks:
--shortstat
仅输出
--stat
格式的最后一行,其中包含已修改文件的总数,以及已添加和删除的行数。
注意:
您甚至可以使用它来计算一些daily activity
答案 2 :(得分:2)
^
(克拉)让你获得父级,所以你可以:
git diff --shortstat abc123^ abc123
答案 3 :(得分:1)
使用diff实用程序比较合并前后文件的主分支版本。
WinMerge(如果您使用的是Windows)将是一个很好用的。