服务器上的git仓库怎么处理?

服务器上的git仓库莫名其妙就ahead of 'origin/master' by N commits.怎么处理?

larvel项目,本地开发,上传云端仓库,服务器上直接pull远程仓库。
今天突然发现,git status之后,提示your branch is ahead of 'origin/master' by 5 commits.
比对commit id,和远程仓库的完全一致,没有异常。
然后无视它,直接git pull origin master,pull了两个commit到最新版本,再git status,发现变成了ahead of 'origin/master' by 7 commits.
之后每pull一个commit,ahead of都会增加一个。但明明和远程仓库是同步的。
每一次的pull看到的信息,都是Fast-forward合并的。

怎么才能解决这个问题?(删库重新clone不算)


绝地无双
浏览 982回答 2
2回答

摇曳的蔷薇

每次都采用 git pull origin master会让本地节点一直指向远端 origin/master (指向不更新),所以当从远端获取到新的commit后,这个commit相对于本地节点的指向(远端的旧commit)就会提示“超前”。解决方法:直接使用git fetch命令修复现在的问题,让本地指向远端最新节点后续更新使用 git pull, 不要带 origin master

鸿蒙传说

你的 origin 是不是 fork 的?你说你在服务器上 pull,然后出现这个提示的也是在服务器上?那你看看服务器上的 origin 指向的是什么先。。git remote -v 看看输出如果你是 fork 的,而你又没 push 过,那你直接 push 一下就好了
打开App,查看更多内容
随时随地看视频慕课网APP