]> git.ipfire.org Git - thirdparty/git.git/commitdiff
push: simplify setup_push_simple()
authorFelipe Contreras <felipe.contreras@gmail.com>
Mon, 31 May 2021 19:32:35 +0000 (14:32 -0500)
committerJunio C Hamano <gitster@pobox.com>
Wed, 2 Jun 2021 01:09:52 +0000 (10:09 +0900)
There's a safety check to make sure branch->refname isn't different
from branch->merge[0]->src, otherwise we die().

Therefore we always push to branch->refname.

Suggestions-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/push.c

index 972d8e1cfd5c447284f1e25a9a53c9fa3af62504..e37c7512682ee30dcd4eecb8bd1f6ccea3d5a437 100644 (file)
@@ -225,14 +225,10 @@ static void setup_push_current(struct remote *remote, struct branch *branch)
 
 static void setup_push_simple(struct remote *remote, struct branch *branch, int same_remote)
 {
-       const char *dst;
-
        if (!branch)
                die(_(message_detached_head_die), remote->name);
 
-       if (!same_remote) {
-               dst = branch->refname;
-       } else {
+       if (same_remote) {
                if (!branch->merge_nr || !branch->merge || !branch->remote_name)
                        die(_("The current branch %s has no upstream branch.\n"
                            "To push the current branch and set the remote as upstream, use\n"
@@ -248,10 +244,8 @@ static void setup_push_simple(struct remote *remote, struct branch *branch, int
                /* Additional safety */
                if (strcmp(branch->refname, branch->merge[0]->src))
                        die_push_simple(branch, remote);
-
-               dst = branch->merge[0]->src;
        }
-       refspec_appendf(&rs, "%s:%s", branch->refname, dst);
+       refspec_appendf(&rs, "%s:%s", branch->refname, branch->refname);
 }
 
 static int is_same_remote(struct remote *remote)