Junio C Hamano <gitster@xxxxxxxxx> writes: > Jeff King <peff@xxxxxxxx> writes: > >> I don't think doing it this way is _wrong_. It just feels sort of >> pointlessly over-engineered. It's also a little weird that all of the: >> >> if (advice_foo) >> >> will trigger because "advice_foo" is set to -1. I think it does the >> right thing, but it feels like a bug (the value is now a tri-state, and >> we silently collapse two states into one). > > Guilty as charged. I do agree that this is over-engineered. Let's discard 1/2 and amend 2/2 with this incremental. builtin/checkout.c | 3 +-- t/t2020-checkout-detach.sh | 5 ----- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/builtin/checkout.c b/builtin/checkout.c index 2a32b5f..337c35a 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -656,8 +656,7 @@ static void update_refs_for_switch(const struct checkout_opts *opts, REF_NODEREF, UPDATE_REFS_DIE_ON_ERR); if (!opts->quiet) { if (old->path && - (advice_detached_head == 1 || - (advice_detached_head == -1 && !opts->force_detach))) + advice_detached_head == 1 && !opts->force_detach) detach_advice(new->name); describe_detached_head(_("HEAD is now at"), new->commit); } diff --git a/t/t2020-checkout-detach.sh b/t/t2020-checkout-detach.sh index fe311a1..fbb4ee9 100755 --- a/t/t2020-checkout-detach.sh +++ b/t/t2020-checkout-detach.sh @@ -180,11 +180,6 @@ test_expect_success 'no advice given for explicit detached head state' ' git checkout child && git checkout --detach HEAD^0 >actual 2>&1 && test_cmp expect.no-advice actual && - # explicitly ask advice - test_config advice.detachedHead true && - git checkout child && git checkout --detach HEAD^0 >actual 2>&1 && - test_cmp expect.advice actual && - # explicitly decline advice test_config advice.detachedHead false && git checkout child && git checkout --detach HEAD^0 >actual 2>&1 && -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html