Branch set as own upstream using one of the following commands returns immediately with an exit code of 0: - `git branch --set-upstream-to foo refs/heads/foo` - `git branch --force --track foo foo` Since neither of these actions currently set the upstream, an exit code of 0 is misleading. Instead, exit with a status code indicating failure by using the die function. Signed-off-by: Brian Gesiak <modocache@xxxxxxxxx> --- branch.c | 9 ++------- t/t3200-branch.sh | 6 +++--- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/branch.c b/branch.c index e163f3c..9bac8b5 100644 --- a/branch.c +++ b/branch.c @@ -54,13 +54,8 @@ void install_branch_config(int flag, const char *local, const char *origin, cons struct strbuf key = STRBUF_INIT; int rebasing = should_setup_rebase(origin); - if (shortname - && !strcmp(local, shortname) - && !origin) { - warning(_("Not setting branch %s as its own upstream."), - local); - return; - } + if (shortname && !strcmp(local, shortname) && !origin) + die(_("Not setting branch %s as its own upstream."), local); strbuf_addf(&key, "branch.%s.remote", local); git_config_set(key.buf, origin ? origin : "."); diff --git a/t/t3200-branch.sh b/t/t3200-branch.sh index 6164126..3ac493f 100755 --- a/t/t3200-branch.sh +++ b/t/t3200-branch.sh @@ -507,10 +507,10 @@ EOF test_cmp expected actual ' -test_expect_success '--set-upstream-to shows warning if used to set branch as own upstream' ' - git branch --set-upstream-to refs/heads/my13 my13 2>actual && +test_expect_success '--set-upstream-to fails if used to set branch as own upstream' ' + test_must_fail git branch --set-upstream-to refs/heads/my13 my13 2>actual && cat >expected <<EOF && -warning: Not setting branch my13 as its own upstream. +fatal: Not setting branch my13 as its own upstream. EOF test_i18ncmp expected actual ' -- 1.8.3.4 (Apple Git-47) -- 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