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

Re: git-bisect working only from toplevel dir

From
Adam Borowski <kilobyte@angband.pl>
Date
Nov 23, 2011, 20:09 UTC
Message-ID
<20111123200920.GA21004@angband.pl>
In-Reply-To
<20111123192329.GA21630@sigill.intra.peff.net>
On Wed, Nov 23, 2011 at 02:23:29PM -0500, Jeff King wrote:
Show 9 quoted lines
> On Wed, Nov 23, 2011 at 11:09:29AM -0800, Junio C Hamano wrote:
> 
> > As to the approach, I suspect that it would be far better if it made
> > workable with cd_to_toplevel at the beginning, instead of saying
> > SUBDIRECTORY_OK.
> > 
> > After all, the current directory may disappear during the course of
> > bisection, upon checking out a revision that did not have the directory
> > you started your bisection from.
No different from git-reset or git-checkout.
Show 7 quoted lines
> 
> But from what directory would you expect:
> 
>   git bisect run make
> 
> to run from? If you use a GNU-ish layout with all of your code in
> "src/",

In a vast majority of cases the layout remains constant during the whole bisection.

Show 8 quoted lines
> then I can see it useful to do something like:
> 
>   cd src
>   git bisect run make
> 
> If we cd_to_toplevel, we can remember the prefix that we started from
> and cd to it before running the user's command, but there is no
> guarantee that it actually exists.

I guess, the best that can be done is going into as many path components as possible.

> Maybe that commit should be considered indeterminate then?

Why? If you're running an automated command, then it will probably fail, yeah. I guess most people bisect manually though, so even in repositories that do have this problem, there's someone who can test the given commit anyway.

> I dunno. I haven't thought that hard about it. But I don't think it's
> quite as simple as just telling bisect it's OK to run from a subdir.

At the very least, generally working with a caveat in corner cases seems to be better than outright failing.

If you're paranoid, there's an option of having a config setting "yes, I've read the manual why automated bisection can fail".

-- 
1KB		// Yo momma uses IPv4!
Previous: Jeff KingNext: Jeff King
Message 4 of 11 in “git-bisect working only from toplevel dir”
  1. Adam BorowskiNov 23, 2011
  2. Junio C HamanoNov 23, 2011
  3. Jeff KingNov 23, 2011
  4. Adam BorowskiNov 23, 2011
  5. Jeff KingNov 23, 2011
  6. Peter BaumannNov 23, 2011
  7. Jeff KingNov 23, 2011
  8. Junio C HamanoNov 23, 2011
  9. Peter BaumannNov 24, 2011
  10. Junio C HamanoNov 24, 2011
  11. Jeff KingNov 29, 2011

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.