Calculating total lines added/deleted after a merge?
I recently took a branch with a lot of commits and merged it back into my master branch. If I needed to go b开发者_如何学Goack and see how many lines were added or deleted because of that merge, how would I go about doing that?
git diff
has a --shortstat
option which would have been useful before the merge as then you could've just done git diff --shortstat ..branch/to/merge
from your main branch.
If the merge wasn't a fast-forward, then you'll have generated a merge commit. That will have the parent information for both branches. You can use those to do git diff --shortstat parent1..mergecommit
to show what changes happened when moving from the first parent (your main branch) to the result of the merge commit.
If the merge was a fast-forward, then you just need to know what the sha1 of your branch was before the merge and compare that to the current. You could probably get that from git reflog
.
git diff --shortstat commit1 commit2
should give you what you want:
git diff --shortstat 8fcb60bebc18b9ee4a5a0a86d41e8ecf954b8c99 0214060c21f31f9b54446dde6b6e48901e6a144d
5 files changed, 182 insertions(+), 225 deletions(-)
See git tricks for more information:
--shortstat
Output only the last line of the
--stat
format containing total number of modified files, as well as number of added and deleted lines.
Note:
You can even use it to compute some daily activity
^
(carat) gets you parent rev, so you could:
git diff --shortstat abc123^ abc123
Use a diff utility to compare the main branch version of the file before and after the merge.
WinMerge (if you're using Windows) would be a good one to use.
精彩评论