Hi Jeff, I followed all your steps, but didn¹t find anything. $ ls -d .git .git $ ls .git/master ls: .git/master: No such file or directory $ git show HEAD commit 92d392c37e376db69d61dafdc427b379d860fb5a Merge: 6be322c 5544904 ... $ git show refs/heads/master commit 92d392c37e376db69d61dafdc427b379d860fb5a Merge: 6be322c 5544904 ... $ git rev-parse --symbolic-full-name master refs/heads/master $ Then I realized that the message should say, "Your branch is ahead of Œorigin/master' by X commits" And not "Your branch is ahead of 'origin' by X commits² So I used branch ‹set-upstream and see the expected behavior. $ git branch --set-upstream-to=origin/master Branch master set up to track remote branch master from origin. $ git status On branch master Your branch is up-to-date with 'origin/master'. Untracked files: (use "git add <file>..." to include in what will be committed) ... nothing added to commit but untracked files present (use "git add" to track) $ I¹m still not sure what it means for the branch upstream to be ³origin² only. I do have 2 remotes. A 2nd remote, called ³teamname-origin², is indeed behind my local master by 108 commits. So it seems there is a bug. When master¹s upstream is ³origin², it was actually pointing to ³teamname-origin/master², which is behind by 108 commits. However, pushing, pulling, rebasing, etc, all work against the correct remote (³origin²). So this could be a bug in git status? Thanks, Ernesto On 12/1/16, 1:47 PM, "Jeff King" <peff@xxxxxxxx> wrote: >On Thu, Dec 01, 2016 at 07:49:40PM +0000, Alfonsogonzalez, Ernesto (GE >Digital) wrote: > >> $ git diff origin/master >> $ git status >> On branch master >> Your branch is ahead of 'origin' by 108 commits. >> (use "git push" to publish your local commits) >> Untracked files: >> (use "git add <file>..." to include in what will be committed) > >The "master" we are talking about here must always be >"refs/heads/master", since it will have come from resolving the HEAD >symbolic ref. > >But here: > >> $ git show origin/master --oneline >> 92d392c Merge pull request #21 from org/branch >> >> $ git show master --oneline >> 92d392c Merge pull request #21 from org/branch > >The "master" in the second case could possibly find "master" as another >name. Is it possible you have a .git/master file (this may have been >created by accidentally running "git update-ref master" instead of "git >update-ref refs/heads/master")? > >Or other things you could check: > > # see what's on HEAD, which we know points to refs/heads/master > git show HEAD > > # or just check refs/heads/master itself > git show refs/heads/master > > # or just ask what "master" resolves to > git rev-parse --symbolic-full-name master > >That last one actually seems to complain that "refname 'master' is >ambiguous' if you do have .git/master. I think that's a minor bug, as it >should presumably follow the normal disambiguation rules used for lookup >(in which .git/master always takes precedence over refs/heads/master). > >-Peff