首先,我知道一些措辞相似的问题,例如:
- 如何在 git 中找到 origin/master 的位置,以及如何更改它?
- git:您的分支领先于 X 次提交
- Git:Branch 领先于 X 次提交。没有帮助做 git pull
- pull-only repo 的 'git status' 表示分支在 origin/master 之前。为什么?
他们(AFAICT)都没有与我的这个问题版本相匹配的答案。
我的情况是:
$ git status
# On branch stable
nothing to commit (working directory clean)
$ git checkout master
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 857 commits.
在现有问题中,接受和赞成的答案大多同意它的字面意思是它所说的......我领先了,我需要将我的新提交推送到 origin/master。
我知道实际上相反的情况是正确的,我的本地master
分支位于远程之后origin/master
,实际上我需要git pull origin master
在本地进行一些工作之前。(或者可能只是git fetch origin
?)
我的问题是……是否有某种理由将消息措辞Your branch is ahead of 'origin/master' by 857 commits.
使其真正有意义?
因为我目前理解它的方式与消息所说的相反(“我的分支”在原点/主控后面)。
还是真的意味着:“远程主分支的 HEAD 领先于您的本地源/主跟踪分支”?
更新 FWIW 我在一个由六名其他开发人员组成的团队中工作。我们每天都会多次拉取、提交和推送等,没有问题。我这里没有错误......我只是想理解为什么 Git 会这样表达它的信息——无论是措辞本身选择不当,还是 Git 的某些潜在概念导致他们这样说我没有正确理解。
这里的更多信息
是我猜可能是输出的相关部分git config -l
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
remote.origin.url=https://code.google.com/a/google.com/p/xxxxx/
branch.master.remote=origin
branch.master.merge=refs/heads/master
branch.master.mergeoptions=--no-ff