git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: help reverting a merge

From
Jeff King <peff@peff.net>
Date
Nov 30, 2009, 08:13 UTC
Message-ID
<20091130081315.GA587@coredump.intra.peff.net>
In-Reply-To
<dd18b0c30911291524q7ea7e9c7v980340ddf7269519@mail.gmail.com>
On Sun, Nov 29, 2009 at 03:24:09PM -0800, Justin Mattock wrote:
Show 9 quoted lines
> I've done a bisect on a problem with the kernel,
> and am a bit confused on what to do. i.g. the
> results are showing this:
> a03fdb7612874834d6847107198712d18b5242c7 is the first bad commit
>
> [...]
> 
> how do I find out the commits in this merge to automatically
> revert to find the problem that's causing this bug?
There is some discussion here:
http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#bisect-merges

Basically neither merged branch was buggy on its own, but together they have a bug. You can try rebasing the two sides of the merge into a linear history, and then bisecting on that:

  # order doesn't matter here, but rebasing 12e0933 on top makes more
  # sense since it has many fewer commits between it and the merge-base
  # (and you'll need to fix up conflicts manually, so the smaller the
  # rebase the better)
  git checkout 12e0933
  git rebase 202c467
  # to be safe, confirm that the rebase result shows your bug;
  # we know that 202c467 doesn't have the bug, or we would not have
  # bisected to the merge commit before
  test test test
  git bisect start
  git bisect bad HEAD
  git bisect good 202c467

which should give you the specific commit on the side branch where the breakage occurred.

This has been discussed as a technique before, and I have a feeling in the back of my mind that maybe there was talk of having git-bisect help with this case, but I don't think anything ever came of it. Christian (cc'd) would probably know more.

-Peff
Previous: Justin MattockNext: Justin P. Mattock
Message 2 of 4 in “help reverting a merge”
  1. Justin MattockNov 29, 2009
  2. Jeff KingNov 30, 2009
  3. Justin P. MattockNov 30, 2009
  4. Justin P. MattockDec 1, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.