Re: Aw: Re: Re: Re: [Bug report] 'git status' always says "Your branch is up-to-date with 'origin/master'"
- From
Keshav Kini <keshav.kini@gmail.com>
- Date
- Jan 14, 2014, 23:34 UTC
- Message-ID
- <87lhyi6su0.fsf@gmail.com>
- In-Reply-To
- <xmqqlhytjapb.fsf@gitster.dls.corp.google.com>
The following message is a courtesy copy of an article that has been posted to gmane.comp.version-control.git as well.
Junio C Hamano <gitster@pobox.com> writes:
Show 30 quoted lines
> Thomas Ackermann <th.acker@arcor.de> writes: >>> > But for the simple use case where you only have a master >>> > branch I consider it not really helpful and - at least for me - >>> > misleading. >>> >>> I see what you mean, and you're not the only one. >>> >>> Git follows a rule of "never contact another machine unless explicitly >>> asked to using a command such as 'git pull' or 'git fetch'". To >>> support this, it makes a distinction between (1) the remote-tracking >>> ref origin/master and (2) the actual branch "master" in the remote >>> repository. The former is what is updated by 'git fetch', and the >>> latter is something git does not know about without talking to the >>> remote server. >>> >>> What documentation did you use when first starting to learn git? >>> Perhaps it can be fixed to emphasize the distinction between (1) and >>> (2) earlier. >> >> I think it's not the problem of the documentation but of myself >> not having it read thorough enough ;-) >> >> (This new feature in V1.8.5 of course is not documented in any of the books >> up to now but in the future could be used to explain the above mentioned >> rule.) > > By the way, this is nothing new in 1.8.5; we didn't bother saying > up-to-date before, so you may not have noticed, but its silence was > already telling you that your branch was up-to-date with respect to > what you are building on top of.
Maybe it would be worthwhile to add a message like "(last fetched from upstream branch at [date])", taken from $GIT_DIR/logs/refs/remotes/foo/bar ? This would mitigate the confusion Thomas suffered, I think.
Caveat: pretty ill-defined, since 1) if you've been pushing and not fetching, the most recent time at which it is known that your remote-tracking branch was up to date could be much newer than when it was technically "last fetched"; 2) the upstream branch might not even be a remote-tracking branch; 3) probably something else I haven't thought of.
-Keshav