Signed-off-by: Felipe Contreras <felipe.contreras@xxxxxxxxx> --- builtin/branch.c | 17 ++++++++++++++++- t/t6040-tracking-info.sh | 5 +++-- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/builtin/branch.c b/builtin/branch.c index 17773d7..e0a8d0a 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -42,6 +42,7 @@ static char branch_colors[][COLOR_MAXLEN] = { GIT_COLOR_NORMAL, /* LOCAL */ GIT_COLOR_GREEN, /* CURRENT */ GIT_COLOR_BLUE, /* UPSTREAM */ + GIT_COLOR_YELLOW, /* PUBLISH */ }; enum color_branch { BRANCH_COLOR_RESET = 0, @@ -49,7 +50,8 @@ enum color_branch { BRANCH_COLOR_REMOTE = 2, BRANCH_COLOR_LOCAL = 3, BRANCH_COLOR_CURRENT = 4, - BRANCH_COLOR_UPSTREAM = 5 + BRANCH_COLOR_UPSTREAM = 5, + BRANCH_COLOR_PUBLISH = 6 }; static enum merge_filter { @@ -76,6 +78,8 @@ static int parse_branch_color_slot(const char *var, int ofs) return BRANCH_COLOR_CURRENT; if (!strcasecmp(var+ofs, "upstream")) return BRANCH_COLOR_UPSTREAM; + if (!strcasecmp(var+ofs, "publish")) + return BRANCH_COLOR_PUBLISH; return -1; } @@ -448,6 +452,17 @@ static void fill_tracking_info(struct strbuf *stat, const char *branch_name, else strbuf_addstr(&fancy, ref); } + if (branch->push.dst) { + ref = shorten_unambiguous_ref(branch->push.dst, 0); + if (fancy.len) + strbuf_addstr(&fancy, ", "); + if (want_color(branch_use_color)) + strbuf_addf(&fancy, "%s%s%s", + branch_get_color(BRANCH_COLOR_PUBLISH), + ref, branch_get_color(BRANCH_COLOR_RESET)); + else + strbuf_addstr(&fancy, ref); + } if (upstream_is_gone) { if (show_upstream_ref) diff --git a/t/t6040-tracking-info.sh b/t/t6040-tracking-info.sh index 7ac8fd0..8b9ef63 100755 --- a/t/t6040-tracking-info.sh +++ b/t/t6040-tracking-info.sh @@ -33,7 +33,8 @@ test_expect_success setup ' git checkout -b b5 --track brokenbase && advance g && git branch -d brokenbase && - git checkout -b b6 origin + git checkout -b b6 origin && + git branch --set-publish origin/master b6 ) && git checkout -b follower --track master && advance h @@ -64,7 +65,7 @@ b2 [origin/master: ahead 1, behind 1] d b3 [origin/master: behind 1] b b4 [origin/master: ahead 2] f b5 [brokenbase: gone] g -b6 [origin/master] c +b6 [origin/master, origin/master] c EOF test_expect_success 'branch -vv' ' -- 1.9.1+fc1 -- 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