branch --set-upstream-to: be consistent when advising

"git branch --set-upstream-to" behaves differently when advice is
enabled/disabled:

|                 | error prefix | exit code |
|-----------------+--------------+-----------|
| advice enabled  | error:       |         1 |
| advice disabled | fatal:       |       128 |

Make both cases consistent by using die_message() when advice is
enabled (this was first proposed in [1]).

[1] https://lore.kernel.org/git/211210.86ee6ldwlc.gmgdl@evledraar.gmail.com

Signed-off-by: Glen Choo <chooglen@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Glen Choo 2022-03-29 20:01:18 +00:00 committed by Junio C Hamano
parent cfbda6ba6b
commit ac59c742de

View file

@ -384,9 +384,10 @@ static void dwim_branch_start(struct repository *r, const char *start_name,
if (get_oid_mb(start_name, &oid)) {
if (explicit_tracking) {
if (advice_enabled(ADVICE_SET_UPSTREAM_FAILURE)) {
error(_(upstream_missing), start_name);
int code = die_message(_(upstream_missing),
start_name);
advise(_(upstream_advice));
exit(1);
exit(code);
}
die(_(upstream_missing), start_name);
}