我们有一个托管在多个同事访问的共享网络驱动器上的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
。
有什么办法可以解决这个问题吗?
答案 0 :(得分:12)
您必须致电git fetch
以获取从远程仓库到本地仓库的更新,但不会更改您当前的分支机构位置。之后git status
将显示正确的结果。