git:你的分支在X提交之前
这究竟是如何产生的?
目前我正在单独回购一个回购,所以这是我的工作流程:
然后,当我做一个git status
它告诉我我的分支在X提交前面(大概是我提交的提交数量相同)。 是因为当你推动代码时,它实际上并没有更新你的本地缓存文件(在.git文件夹中)? git pull
似乎'修复'这个奇怪的消息,但我仍然好奇它为什么会发生,也许我使用混帐错误?
包括邮件中打印的分支
我的本地分支领先于主人
你在哪里推/拉当前分支
我正在向GitHub推送,并在当时正在使用的计算机上工作,我的本地副本始终处于最新状态,因为我是唯一一位正在处理此问题的人员。
它实际上并不检查远程回购
这就是我的想法,我想我会确保我的理解是正确的。
你是否传递了一些额外的参数?
不是我能看到的,也许在我的最后有一些有趣的配置?
$ git status
# On branch master
# Your branch is ahead of 'origin/master' by 1 commit.
#
nothing to commit (working directory clean)
如果你在做一个git pull remote branch
之后得到这个消息,请尝试使用git fetch
跟踪。 (可选地,运行git fetch -p
来修剪从repo中删除的分支)
Fetch似乎更新远程分支的本地表示,当你执行git pull remote branch
时不一定发生。
使用
git pull --rebase
--rebase选项意味着git会将本地提交移到一边,与远程同步,然后尝试从新状态应用提交。
我认为你误解了信息 - 你的分支不在master
,而是master
。 它位于origin/master
,它是一个远程跟踪分支 ,用于记录最后一次push
, pull
fetch
或fetch
远程存储库的状态。 它完全告诉你你做了什么; 你领先于遥控器,它提醒你推动。
上一篇: git: Your branch is ahead by X commits
下一篇: How can I find the location of origin/master in git, and how do I change it?