tags:

views:

40

answers:

3

I recently took a branch with a lot of commits and merged it back into my master branch. If I needed to go back and see how many lines were added or deleted because of that merge, how would I go about doing that?

+1  A: 

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.

Aaron
+1  A: 
git diff --shortstat commit1 commit2

should give you what you want, as illustrated here:

-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

alt text

VonC
Thank you for the graph! This'll definitely come in handy. I wish I could mark both yours and jamessan's answers as accepted.
Bryan Veloso
@Bryan: no problem, jamessan's answer was more detailed;
VonC
+2  A: 

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.

jamessan
+1: better explanation than my `--shortstat`answer ;)
VonC