git は動作をカスタマイズできるのでカスタマイズしてない前提で
① git pull と git pull origin は全く同じ動作。 origin の全ブランチを取得してローカルを更新
➁ git pull origin A は origin からブランチ A だけ取得してローカルのAを更新
➂ 上の2つ見れば分かるだろう