6

複数の同僚がアクセスする共有ネットワーク ドライブでホストされている 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 が同期していないかどうかを判断できないのでしょうか? Towerのような GUI を使用しても違いはありません。GUI で [更新] を押しても、同期が取れていないことは示されません。また、ローカル マスター ブランチは追跡中origin/masterです。

この問題を解決するためにできることはありますか?

4

1 に答える 1

14

git fetchリモート リポジトリからローカル リポジトリへの更新を取得するために呼び出す必要がありますが、現在のブランチの位置を変更する必要はありません。その後、git status適切な結果が表示されます。

于 2015-04-06T21:56:55.957 に答える