Git development
 help / color / mirror / Atom feed
From: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>
To: Adam Monsen <haircut@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: frustrated forensics: hard to find diff that undid a fix
Date: Sat, 5 Mar 2011 09:29:57 -0500 (EST)	[thread overview]
Message-ID: <alpine.DEB.2.00.1103050844130.26585@debian> (raw)
In-Reply-To: <4D71D63E.3030907@gmail.com>

On Fri, 4 Mar 2011, Adam Monsen wrote:

> 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.
> 
> I also tried bisect and pickaxe. Bisect wrongly identified the first bad
> commit, and pickaxe just didn't see the change at all.

I was also bitten by this at work not too long ago. I started
wondering if it would make sense to introduce a new option to git log
and friends that would show the differences compared to a recreated
merge commit. In the simple case where there are no merge conflicts,
this would show only changes that someone explicitly dropped, like in
your case. If there were conflicts, I imagine it would show the same
output as -c or --cc. Does this make any sense?

One of the reasons that people sometimes drop the 'theirs' side while
merging is that they see the files show up when running 'git status'
and they think "Hmm... I didn't modify this file, let's reset
it". Would it be completely nonsensical to suggest that 'git status'
could learn to, during a merge, compare to a recreated merge commit
instead of comparing to HEAD?

Let me know what you think. I haven't really thought this through, so
I wouldn't be surprised if I'm just talking nonsense.


/Martin

      parent reply	other threads:[~2011-03-05 14:30 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-05  6:20 frustrated forensics: hard to find diff that undid a fix Adam Monsen
2011-03-05 10:00 ` Jonathan del Strother
2011-03-05 11:33 ` Jakub Narebski
2011-03-05 12:51   ` Jonathan Nieder
2011-03-05 13:48     ` Jeff King
2011-03-05 14:34   ` Adam Monsen
2011-03-05 19:56     ` [PATCH 0/2] improve combined diff documentation Adam Monsen
2011-03-05 19:56     ` [PATCH 1/2] documentation fix: git log -p does not imply -c Adam Monsen
2011-03-07  0:36       ` Junio C Hamano
2011-03-07 15:47         ` Jeff King
2011-03-07 18:37           ` Junio C Hamano
2011-03-07 19:12             ` Jeff King
2011-03-07 21:57               ` [PATCH v3] Documentation " Adam Monsen
2011-03-08  0:21                 ` Junio C Hamano
2011-03-08  0:49                   ` [PATCH v4] " Adam Monsen
2011-03-08 19:43                     ` Junio C Hamano
2011-03-08 20:46                       ` Adam Monsen
2011-03-09  0:58                         ` Junio C Hamano
2011-03-09 21:25                           ` Adam Monsen
2011-03-09 21:27                             ` [PATCH] SubmittingPatches: clean up commit message tips Adam Monsen
2011-03-09 22:20                               ` Junio C Hamano
2011-03-08 20:51                       ` [PATCH v5] diff format documentation: clarify --cc and -c Adam Monsen
2011-03-08 21:03                       ` [PATCH v6] " Adam Monsen
2011-03-08  1:19                   ` [PATCH v3] Documentation fix: git log -p does not imply -c Jeff King
2011-03-05 19:56     ` [PATCH 2/2] English grammar fixes for combined diff doc Adam Monsen
2011-03-05 14:29 ` Martin von Zweigbergk [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.DEB.2.00.1103050844130.26585@debian \
    --to=martin.von.zweigbergk@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=haircut@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox