git pullはヤバい

詳細は以下のページを参照のこと.

http://dqn.sakusakutto.jp/2012/11/git_pull.html
http://d.hatena.ne.jp/inouetakuya/20120826/1345979787
http://d.hatena.ne.jp/hokaccha/20120404/1333507076

なんつーか何がヤバいってgit pullがgit pushの反対と思うとはまるってことでしょうか. git pushの反対はgit fetchだと思っておいた方が色々良いのではないかと. 自分でfetchしておいてからrebaseだのmergeだのした方がリモートブランチの扱い等の理解も進むので, 初学者にgit pull教えるの禁止.

大体からしてmergeを呼ぶので, 複数人で作業しているとやたらと"Merge branch 'master' of ..."が走るので気持ちが悪い. これに関しては"git pull --rebase"とするか, "git config branch.master.rebase true"とかしておくかすればmergeの代わりにrebaseを呼ぶようになるらしいが.

http://d.hatena.ne.jp/sinsoku/20110925/1316933393

確かにfetchしてからmergeするのはメンドイというのはわかるが, fetchで何も取ってこない場合はpullと同じだし, 誰かが更新している場合はそれを確認してからmergeする位の余裕はあった方が良い. pullよ, 滅びよ.