よくpushの反対はpullコマンドではなくfetchコマンドだと言うがそれも違うと思う。
pushは「ローカルレポジトリのブランチ→リモートレポジトリのブランチ」へ変更を反映させる。
しかしfetchは「リモートレポジトリのブランチ→ローカルレポジトリのブランチ」に変更を反映させるコマンドではなく、「リモートレポジトリのブランチ→ローカルレポジトリのリモート追跡ブランチ」に変更を反映させるコマンドである。
まとめると、こう。
【ローカルレポジトリ】 【リモートレポジトリ】 push ブランチ ──────────────→ ブランチ (master) (master) ↑ ┌ - - - pull - - ┐ │ │ merge 両方実行 │ │ │ fetch │ リモート追跡ブランチ ←──────────┘ (remotes/origin/master)