fetchはリモートの「情報」を取ってくるだけ、 pullは情報を取ってきて、さらに実データをローカルに反映する。 という理解でした。 でも、fetchで何やら情報を取得している様子なのに、その後行ったpullでは何も情報が取得されない。 ということが有ったので、fetchって一体何をしているの?ということで調べてみた。 まずはブランチについて ブランチの種類 ローカルブランチ ローカルで開発するときにcheckoutで開いてコミットしていくお馴染みのもの。 ローカルで作成したブランチは、pushすることでリモート追跡ブランチにも反映される。 リモート追跡ブランチ ローカルに保持している、クローン元リポジトリのブランチを取り込んだもの。 反映はfetchやpullコマンドを実行したタイミングであり自動取得はしないので、 いつの間にかリモートリポジトリ側と不一致になっていたということも有る。