Hi, Quick nitpicks. Carlos Martín Nieto wrote: > --- a/builtin/branch.c > +++ b/builtin/branch.c > @@ -864,10 +864,32 @@ int cmd_branch(int argc, const char **argv, const char *prefix) > info and making sure new_upstream is correct */ > create_branch(head, branch->name, new_upstream, 0, 0, 0, quiet, BRANCH_TRACK_OVERRIDE); > } else if (argc > 0 && argc <= 2) { > + struct branch *branch = branch_get(argv[0]); > + const char *old_upstream = NULL; > + int branch_existed = 0; > + > if (kinds != REF_LOCAL_BRANCH) > die(_("-a and -r options to 'git branch' do not make sense with a branch name")); > + > + /* Save what argv[0] was pointing to so we can give > + the --set-upstream-to hint */ > + if (branch_has_merge_config(branch)) > + old_upstream = shorten_unambiguous_ref(branch->merge[0]->dst, 0); Whitespace is odd here. Maybe this case could be factored out as a new function to make room on the right margin and make cmd_branch() easier to read straight through. > + > + branch_existed = ref_exists(branch->refname); > create_branch(head, argv[0], (argc == 2) ? argv[1] : head, > force_create, reflog, 0, quiet, track); > + > + if (argc == 1) { > + printf("If you wanted to make '%s' track '%s', do this:\n", head, argv[0]); > + if (branch_existed) > + printf(" $ git branch --set-upstream '%s' '%s'\n", argv[0], old_upstream); > + else > + printf(" $ git branch -d '%s'\n", argv[0]); > + > + printf(" $ git branch --set-upstream-to '%s'\n", argv[0]); Message should go on stderr and be guarded with an advice option (see advice.c). Like this: const char *arg; ... if (argc != 1 || !advice_old_fashioned_set_upstream) return 0; /* ok. */ arg = argv[0]; advise("If you wanted to make '%s' track '%s', do this:", head, arg); if (branch_existed) advise(" $ git branch --set-upstream-to='%s' '%s'", old_upstream, arg); else advise(" $ git branch -d '%s'", arg); advise(" $ git branch --set-upstream-to='%s'", arg); If an argument contains single-quotes, the quoting will be wrong, but that's probably not worth worrying about. Hope that helps, Jonathan -- 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