|
|
|
@ -1,3 +1,4 @@
@@ -1,3 +1,4 @@
|
|
|
|
|
#include "git-compat-util.h" |
|
|
|
|
#include "cache.h" |
|
|
|
|
#include "branch.h" |
|
|
|
|
#include "refs.h" |
|
|
|
@ -49,12 +50,11 @@ static int should_setup_rebase(const char *origin)
@@ -49,12 +50,11 @@ static int should_setup_rebase(const char *origin)
|
|
|
|
|
|
|
|
|
|
void install_branch_config(int flag, const char *local, const char *origin, const char *remote) |
|
|
|
|
{ |
|
|
|
|
const char *shortname = remote + 11; |
|
|
|
|
int remote_is_branch = starts_with(remote, "refs/heads/"); |
|
|
|
|
const char *shortname = skip_prefix(remote, "refs/heads/"); |
|
|
|
|
struct strbuf key = STRBUF_INIT; |
|
|
|
|
int rebasing = should_setup_rebase(origin); |
|
|
|
|
|
|
|
|
|
if (remote_is_branch |
|
|
|
|
if (shortname |
|
|
|
|
&& !strcmp(local, shortname) |
|
|
|
|
&& !origin) { |
|
|
|
|
warning(_("Not setting branch %s as its own upstream."), |
|
|
|
@ -77,29 +77,29 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
@@ -77,29 +77,29 @@ void install_branch_config(int flag, const char *local, const char *origin, cons
|
|
|
|
|
strbuf_release(&key); |
|
|
|
|
|
|
|
|
|
if (flag & BRANCH_CONFIG_VERBOSE) { |
|
|
|
|
if (remote_is_branch && origin) |
|
|
|
|
if (shortname && origin) |
|
|
|
|
printf_ln(rebasing ? |
|
|
|
|
_("Branch %s set up to track remote branch %s from %s by rebasing.") : |
|
|
|
|
_("Branch %s set up to track remote branch %s from %s."), |
|
|
|
|
local, shortname, origin); |
|
|
|
|
else if (remote_is_branch && !origin) |
|
|
|
|
else if (shortname && !origin) |
|
|
|
|
printf_ln(rebasing ? |
|
|
|
|
_("Branch %s set up to track local branch %s by rebasing.") : |
|
|
|
|
_("Branch %s set up to track local branch %s."), |
|
|
|
|
local, shortname); |
|
|
|
|
else if (!remote_is_branch && origin) |
|
|
|
|
else if (!shortname && origin) |
|
|
|
|
printf_ln(rebasing ? |
|
|
|
|
_("Branch %s set up to track remote ref %s by rebasing.") : |
|
|
|
|
_("Branch %s set up to track remote ref %s."), |
|
|
|
|
local, remote); |
|
|
|
|
else if (!remote_is_branch && !origin) |
|
|
|
|
else if (!shortname && !origin) |
|
|
|
|
printf_ln(rebasing ? |
|
|
|
|
_("Branch %s set up to track local ref %s by rebasing.") : |
|
|
|
|
_("Branch %s set up to track local ref %s."), |
|
|
|
|
local, remote); |
|
|
|
|
else |
|
|
|
|
die("BUG: impossible combination of %d and %p", |
|
|
|
|
remote_is_branch, origin); |
|
|
|
|
die("BUG: impossible combination of %p and %p", |
|
|
|
|
shortname, origin); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|