2015-04-06 95 views
5

我们有一个git存储库托管在共享网络驱动器上,多个同事访问。我将这称为“中央库”。员工将此回购商品克隆到他们的本地机器,进行更改,然后将更改推回。git状态表示最新的远程即使它不是

我们注意到,如果有人将更改推送到中央存储库,其他员工的本地git回购并不表示它们不同步。 git status

On branch master 
Your branch is up-to-date with 'origin/master'. 

nothing to commit, working directory clean 

但它显然不是最新的。遥控器上有变化,但git没有感应到它们。您可以执行git pull,并立即将更改下载到您当地的回购站,即使它声称它已经是最新的。

这是怎么发生的?是否因为中央存储库托管在共享网络驱动器上?也许git是出于任何原因无法辨别它是否不同步?使用像Git Tower这样的GUI也没有什么不同。即使点击GUI中的“刷新”也不会表明它不同步。此外,本地主分支正在跟踪origin/master

有什么可以解决这个问题吗?

回答

11

您必须致电git fetch才能将远程回购更新到本地回购,但不更改当前分支位置。之后git status将显示正确的结果。