gitのpush&pullの図を書いてみた

pushはorigin(=gitリポジトリ)のmasterブランチをローカルのmasterブランチにマージする。
pullはoriginのmasterをローカルのmasterにマージする。
ということか?

git checkoutの意味がわからん。
commitの反対で、ローカルのレポジトリの中身を作業ディレクトリにはき出すのかと思ったら、違う?
git checkoutしなくても、git pull origin masterした時点で更新が反映されている…。