Carlos Martín Nieto <cmn@xxxxxxxx> writes: > diff --git a/builtin/branch.c b/builtin/branch.c > index 0e060f2..c886fc0 100644 > --- a/builtin/branch.c > +++ b/builtin/branch.c > @@ -713,6 +713,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix) > int verbose = 0, abbrev = -1, detached = 0; > int reflog = 0, edit_description = 0; > int quiet = 0; > + const char *new_upstream = NULL; > enum branch_track track; > int kinds = REF_LOCAL_BRANCH; > struct commit_list *with_commit = NULL; > @@ -726,6 +727,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix) > BRANCH_TRACK_EXPLICIT), > OPT_SET_INT( 0, "set-upstream", &track, "change upstream info", > BRANCH_TRACK_OVERRIDE), > + OPT_STRING('u', "set-upstream-to", &new_upstream, "upstream", "change the upstream info"), > OPT__COLOR(&branch_use_color, "use colored output"), > OPT_SET_INT('r', "remotes", &kinds, "act on remote-tracking branches", > REF_REMOTE_BRANCH), > @@ -794,10 +796,10 @@ int cmd_branch(int argc, const char **argv, const char *prefix) > argc = parse_options(argc, argv, prefix, options, builtin_branch_usage, > 0); > > - if (!delete && !rename && !edit_description && argc == 0) > + if (!delete && !rename && !edit_description && !new_upstream && argc == 0) > list = 1; > > - if (!!delete + !!rename + !!force_create + !!list > 1) > + if (!!delete + !!rename + !!force_create + !!list + !!new_upstream > 1) > usage_with_options(builtin_branch_usage, options); It probably is an error to have track and new_upstream together. The remainder of [Patch 1/3] looked entirely sensible, including the proposed log message (modulo missing sign-off). Thanks. -- 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