status: always show tracking branch even no change
In order to see what the current branch is tracking, one way is using "git branch -v -v", but branches other than the current are also reported. Another way is using "git status", such as: $ git status # On branch master # Your branch is ahead of 'origin/master' by 1 commit. ... But this will not work if there is no change between the current branch and its upstream. Always report upstream tracking info even if there is no difference, so that "git status" is consistent for checking tracking info for current branch. E.g. $ git status # On branch feature1 # Your branch is up-to-date with 'github/feature1'. ... $ git status -bs ## feature1...github/feature1 ... $ git checkout feature1 Already on 'feature1' Your branch is up-to-date with 'github/feature1'. ... Also add some test cases in t6040. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
f2e087395b
commit
f223459bec
7
remote.c
7
remote.c
@ -1788,9 +1788,6 @@ int format_tracking_info(struct branch *branch, struct strbuf *sb)
|
||||
upstream_is_gone = 1;
|
||||
break;
|
||||
default:
|
||||
/* Nothing to report if neither side has changes. */
|
||||
if (!ours && !theirs)
|
||||
return 0;
|
||||
/* with base */
|
||||
break;
|
||||
}
|
||||
@ -1804,6 +1801,10 @@ int format_tracking_info(struct branch *branch, struct strbuf *sb)
|
||||
if (advice_status_hints)
|
||||
strbuf_addf(sb,
|
||||
_(" (use \"git branch --unset-upstream\" to fixup)\n"));
|
||||
} else if (!ours && !theirs) {
|
||||
strbuf_addf(sb,
|
||||
_("Your branch is up-to-date with '%s'.\n"),
|
||||
base);
|
||||
} else if (!theirs) {
|
||||
strbuf_addf(sb,
|
||||
Q_("Your branch is ahead of '%s' by %d commit.\n",
|
||||
|
Reference in New Issue
Block a user