鍍金池/ 問答/Linux  HTML/ 服務(wù)器上的git倉庫莫名其妙就ahead of 'origin/master'

服務(wù)器上的git倉庫莫名其妙就ahead of 'origin/master' by N commits.怎么處理?

larvel項目,本地開發(fā),上傳云端倉庫,服務(wù)器上直接pull遠程倉庫。
今天突然發(fā)現(xiàn),git status之后,提示your branch is ahead of 'origin/master' by 5 commits.
比對commit id,和遠程倉庫的完全一致,沒有異常。
然后無視它,直接git pull origin master,pull了兩個commit到最新版本,再git status,發(fā)現(xiàn)變成了ahead of 'origin/master' by 7 commits.
之后每pull一個commit,ahead of都會增加一個。但明明和遠程倉庫是同步的。
每一次的pull看到的信息,都是Fast-forward合并的。

怎么才能解決這個問題?(刪庫重新clone不算)

回答
編輯回答
傻丟丟

你的 origin 是不是 fork 的?

你說你在服務(wù)器上 pull,然后出現(xiàn)這個提示的也是在服務(wù)器上?那你看看服務(wù)器上的 origin 指向的是什么先。。git remote -v 看看輸出

如果你是 fork 的,而你又沒 push 過,那你直接 push 一下就好了

2017年8月20日 19:44
編輯回答
喜歡你

每次都采用 git pull origin master會讓本地節(jié)點一直指向遠端 origin/master (指向不更新),所以當(dāng)從遠端獲取到新的commit后,這個commit相對于本地節(jié)點的指向(遠端的舊commit)就會提示“超前”。
解決方法:

  1. 直接使用git fetch命令修復(fù)現(xiàn)在的問題,讓本地指向遠端最新節(jié)點
  2. 后續(xù)更新使用 git pull, 不要帶 origin master
2017年12月19日 13:10