git pull の使い方

取ってきて取り込む

書き方

git pull
git pull --rebase
git pull --no-rebase
git pull --ff-only

fetch してから、上流のブランチを今のブランチに merge(または rebase)します。分かれているときはどちらにするか指定が要ります。

よく使うオプション

オプション意味
--rebase取ってきたあと、merge ではなく rebase で取り込む
--no-rebasemerge で取り込む
--ff-only早送りできるときだけ取り込む

例

$ git pullUpdating 9c1e2f4..b3c4d5e
Fast-forward
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

fetch してから、上流のブランチを今のブランチに取り込みます。

$ git pull --rebase

自分のコミットを、取ってきた最新の先に付け直します。マージコミットが増えず、履歴が一直線になります。

$ git pull --ff-only

早送りできるときだけ取り込みます。手元にも新しいコミットがあれば止まるので、安全に試せます。

$ git config --global pull.rebase false

pull のときの取り込み方を merge に決めておきます。決めていないと、分かれたときに聞かれます。

よくある間違い・注意

  • コミットしていない変更があると pull できないことがあります。先にコミットするか git stash でしまいます。
  • pull でコンフリクトしたら、ほかのマージと同じように直して add と commit をします(--rebase のときは rebase --continue)。

実際に打って練習する

Git コースの Lv34「取り込む git pull」で覚えます(第5章 遠征隊(リモート))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜10 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。

Git コマンド一覧(使い方と例)へ戻る