[PATCH v2 3/4] branch --set-upstream-to: be consistent when advising
- From
Glen Choo via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Mar 31, 2022, 18:50 UTC
- Message-ID
- <64d9b8e0f444a7191c83a69b943c95631270ff5b.1648752601.git.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.1190.v2.git.1648752601.gitgitgadget@gmail.com>
From: Glen Choo <chooglen@google.com>
"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
Helped-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Glen Choo <chooglen@google.com> --- branch.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/branch.c b/branch.c index 1252b17b980..ca7f0c3adf8 100644 --- a/branch.c +++ b/branch.c @@ -388,12 +388,10 @@ static void dwim_branch_start(struct repository *r, const char *start_name, real_ref = NULL; if (get_oid_mb(start_name, &oid)) { if (explicit_tracking) { - if (advice_enabled(ADVICE_SET_UPSTREAM_FAILURE)) { - error(_(upstream_missing), start_name); - advise(_(upstream_advice)); - exit(1); - } - die(_(upstream_missing), start_name); + int code = die_message(_(upstream_missing), start_name); + advise_if_enabled(ADVICE_SET_UPSTREAM_FAILURE, + _(upstream_advice)); + exit(code); } die(_("not a valid object name: '%s'"), start_name); }
-- gitgitgadget