Subject: Re: frustrated forensics: hard to find diff that undid a fix

From: Jakub Narebski <[email-masked]>
Date: Sat, 05 Mar 2011 03:33:26 -0800 (PST)

Adam Monsen <[email-masked]> writes:

> I made a fix a month ago on the master branch in a shared repo. A week
> later, a colleague did a merge that undid the fix. I didn't figure out
> the problem until just now because I'd been assuming the fix was still
> on master. I mean, if it wasn't, I should see a reverse patch using "git
> log -p master", right? Wrong. Turns out the fix was undone as part of
> merge conflict resolution (I think).
> 
> Is there some way to include merge conflict resolutions in "git log -p"
> or "git show"? Apparently some important information can be hidden in
> the conflict resolution. Or, more likely, I just don't understand how
> this bit of git works.

By default "git log -p" and "git show" considers merges uninteresting.
Try "git log -p -c" or "git log -p -m".
 
> I also tried bisect and pickaxe. Bisect wrongly identified the first bad
> commit, and pickaxe just didn't see the change at all.

I guess that pickaxe also needs -c or -m.

-- 
Jakub Narebski
Poland
ShadeHawk on #git