From: Phillip Wood Date: Mon, 14 Mar 2022 10:54:09 GMT Subject: Re: [PATCH v2 2/2] rebase: set REF_HEAD_DETACH in checkout_up_to_date() Message-ID: In-Reply-To: On 13/03/2022 07:58, Junio C Hamano wrote: > "John Cai via GitGitGadget" writes: > >> diff --git a/reset.c b/reset.c >> index e3383a93343..f8e32fcc240 100644 >> --- a/reset.c >> +++ b/reset.c >> @@ -101,6 +101,9 @@ int reset_head(struct repository *r, const struct reset_head_opts *opts) >> if (opts->branch_msg && !opts->branch) >> BUG("branch reflog message given without a branch"); >> >> + if (switch_to_branch && opts->flags & RESET_HEAD_DETACH) > > It's just style thing but it probably is easier to read to have > an extra () around the bitwise-&. > >> + BUG("attempting to detach HEAD when branch is given"); > > I wonder if there is a valid use case NOT to use RESET_HEAD_DETACH > when switch_to_branch == NULL. If there isn't, it could be that > we can get rid of RESET_HEAD_DETACH bit and base this decision > solely on switch_to_branch'es NULLness. "rebase --skip" and "rebase --autostash" are two such uses I think Best Wishes Phillip