git pushの反対のコマンドは git fetchでもない

よくpushの反対はpullコマンドではなくfetchコマンドだと言うがそれも違うと思う。
pushは「ローカルレポジトリのブランチ→リモートレポジトリのブランチ」へ変更を反映させる。
しかしfetchは「リモートレポジトリのブランチ→ローカルレポジトリのブランチ」に変更を反映させるコマンドではなく、「リモートレポジトリのブランチ→ローカルレポジトリのリモート追跡ブランチ」に変更を反映させるコマンドである。
まとめると、こう。

【ローカルレポジトリ】              【リモートレポジトリ】
                            push
ブランチ  ──────────────→  ブランチ
(master)                                  (master)
    ↑   ┌ - - -  pull  - - ┐             │
    │ merge     両方実行    │             │
    │                      fetch           │
リモート追跡ブランチ  ←──────────┘
(remotes/origin/master)