如果标题不清楚,我很抱歉,但这是一个奇怪的问题。
我git checkout
到我的“舞台”分支和git pull
以获取我的合作伙伴的最新更改(他昨晚推送到远程存储库的“舞台”分支),果然,他们合并到我当地的“舞台”分支。 git log <branch>
显示他昨晚做了五次提交。
然后我切换到主分支从repo中取出它,因为他告诉我他们在测试后将这些更改合并到主分支。但是当我git checkout stage
回到我的“舞台”分支时,它说我在5次提交时领先于远程分支。我git log origin/stage
并且它没有显示我刚从该存储库中提取的五个提交(此项目中唯一的远程存储库)。 git log stage
显示了我当地“舞台”分支上的五个提交,所以我很难看到远程分支在向我提供我的合作伙伴的最新提交后立即回过头来。
我对此非常陌生,所以我很感激你对我的耐心,因为我还在努力掌握DCVS,而且我很有可能只是误解了一些非常基本的东西。
答案 0 :(得分:14)
尝试此命令:
git log origin/stage..stage
这显示了你在遥控器之前的样子。酌情git rebase origin/stage
/ git push
。
如果没有帮助,请参阅此问题:'git pull origin mybranch' leaves local mybranch N commits ahead of origin. Why?
答案 1 :(得分:0)
以下情况发生后,我也遇到了类似的问题:
我的简单解决方案是撤消这三个本地提交,为每个提交运行以下命令:
git reset --soft HEAD~1
然后git status告诉我,两次提交后我都落后于原点,并且我可以像往常一样拉那些提交。