All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: "Harald Nordgren via GitGitGadget" <gitgitgadget@gmail.com>
Cc: git@vger.kernel.org,  Johannes Sixt <j6t@kdbg.org>,
	 Harald Nordgren <haraldnordgren@gmail.com>
Subject: Re: [PATCH v5 0/2] bisect: add --reset-when-found to leave when done
Date: Sun, 02 Aug 2026 09:01:14 -0700	[thread overview]
Message-ID: <xmqqh5lc4ilx.fsf@gitster.g> (raw)
In-Reply-To: <pull.2335.v5.git.git.1785663075.gitgitgadget@gmail.com> (Harald Nordgren via GitGitGadget's message of "Sun, 02 Aug 2026 09:31:13 +0000")

"Harald Nordgren via GitGitGadget" <gitgitgadget@gmail.com> writes:

> Add a --reset-when-found option to git bisect that resets the bisect session
> when culprit is found.
>
> Changes in v5:
>
>  * Move automatic reset handling to cmd_bisect() after subcommand resources
>    are closed.
>  * Propagate the first-bad commit OID from bisect_next_all() and remove
>    defer_reset plumbing.
>  * Separate checkout from state cleanup in bisect_reset(), and use bool for
>    its quiet flag.

I know I suggested the second one, but is it really needed?  The
only reason the "first bad commit" is needed is because we may need
to reset to it when --reset-when-done is in effect, but before that
reset happens, we can look at refs/bisect/bad to find it out, and if
that is the case, there is already a mechanism for the next-all to
tell later code what that first bad commit is already.

If it make the patch series a lot smaller to take advantage of that
fact, that would be superb.

I also do not understand exactly why we need both reset_when_found
and reset_when_found_arg_seen.  If we initialize the former to a
"not set" value that command line argument or the state file can
never set to, then wouldn't it make the latter unnecessary?

  parent reply	other threads:[~2026-08-02 16:01 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-16  5:35 [PATCH 0/3] bisect: add --auto-reset to leave when done Harald Nordgren via GitGitGadget
2026-07-16  5:35 ` [PATCH 1/3] bisect: read run output from the open descriptor Harald Nordgren via GitGitGadget
2026-07-16  5:35 ` [PATCH 2/3] bisect: let bisect_reset() optionally check out quietly Harald Nordgren via GitGitGadget
2026-07-16  5:35 ` [PATCH 3/3] bisect: add --auto-reset to leave when done Harald Nordgren via GitGitGadget
2026-07-16 17:22   ` Junio C Hamano
2026-07-16 21:22     ` Harald Nordgren
2026-07-17  5:00       ` Junio C Hamano
2026-07-17  9:16         ` Harald Nordgren
2026-07-17 16:43           ` Junio C Hamano
2026-07-17 18:27 ` [PATCH v2 0/3] " Harald Nordgren via GitGitGadget
2026-07-17 18:27   ` [PATCH v2 1/3] bisect: read run output from the open descriptor Harald Nordgren via GitGitGadget
2026-07-17 22:42     ` Junio C Hamano
2026-07-18 16:24     ` Johannes Sixt
2026-07-17 18:27   ` [PATCH v2 2/3] bisect: let bisect_reset() optionally check out quietly Harald Nordgren via GitGitGadget
2026-07-17 18:27   ` [PATCH v2 3/3] bisect: add --auto-reset to leave when done Harald Nordgren via GitGitGadget
2026-07-18 16:18     ` Johannes Sixt
2026-07-20  1:14       ` Junio C Hamano
2026-07-20  9:10   ` [PATCH v3 0/2] " Harald Nordgren via GitGitGadget
2026-07-20  9:10     ` [PATCH v3 1/2] bisect: let bisect_reset() optionally check out quietly Harald Nordgren via GitGitGadget
2026-07-20  9:10     ` [PATCH v3 2/2] bisect: add --reset-when-found to leave when done Harald Nordgren via GitGitGadget
2026-07-23  9:17       ` Johannes Sixt
2026-07-23 14:27         ` Junio C Hamano
2026-08-01  6:51         ` Harald Nordgren
2026-07-20 17:20     ` [PATCH v3 0/2] bisect: add --auto-reset " Junio C Hamano
2026-08-01  9:44     ` [PATCH v4 0/2] bisect: add --reset-when-found " Harald Nordgren via GitGitGadget
2026-08-01  9:44       ` [PATCH v4 1/2] bisect: let bisect_reset() optionally check out quietly Harald Nordgren via GitGitGadget
2026-08-01 19:15         ` Junio C Hamano
2026-08-01  9:44       ` [PATCH v4 2/2] bisect: add --reset-when-found to leave when done Harald Nordgren via GitGitGadget
2026-08-01 19:54         ` Junio C Hamano
2026-08-01 21:40           ` Junio C Hamano
2026-08-02  9:31       ` [PATCH v5 0/2] " Harald Nordgren via GitGitGadget
2026-08-02  9:31         ` [PATCH v5 1/2] bisect: let bisect_reset() optionally check out quietly Harald Nordgren via GitGitGadget
2026-08-02  9:31         ` [PATCH v5 2/2] bisect: add --reset-when-found to leave when done Harald Nordgren via GitGitGadget
2026-08-02 16:01         ` Junio C Hamano [this message]
2026-08-02 21:24         ` [PATCH v6 0/2] " Harald Nordgren via GitGitGadget
2026-08-02 21:24           ` [PATCH v6 1/2] bisect: let bisect_reset() optionally check out quietly Harald Nordgren via GitGitGadget
2026-08-02 21:24           ` [PATCH v6 2/2] bisect: add --reset-when-found to leave when done Harald Nordgren via GitGitGadget
2026-08-03  0:08             ` Junio C Hamano
2026-08-06  7:30               ` Harald Nordgren
2026-08-06 13:50                 ` Junio C Hamano
2026-08-06 15:59                   ` Harald Nordgren
2026-08-06 17:36                     ` Junio C Hamano

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=xmqqh5lc4ilx.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=gitgitgadget@gmail.com \
    --cc=haraldnordgren@gmail.com \
    --cc=j6t@kdbg.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.