git pull コマンドでリモートリポジトリの内容をローカルリポジトリに同期させる方法

git pull コマンドでリモートリポジトリの内容をローカルリポジトリに同期させる方法

Gitコマンドの一つ、git pull はリモートリポジトリの内容をローカルリポジトリに取り込む git fetch と、その内容を master ブランチに反映させる git merge をまとめて行うコマンドです。フェッチとマージを一気に行いたい場合に使われます。

目次

git pull とは

Git でリモートリポジトリの内容をローカルリポジトリに取り込む流れは下記のようになります。

リモートリポジトリ
↓ git fetch
ローカルリポジトリ(origin/master)
↓ git merge
ローカルの作業ディレクトリ(master)

これらの流れを1つのコマンドでまとめて実行するのが git pull です。

git pull の使い方

実際に git pull コマンドを使ってみましょう。

今回はあらかじめリモートリポジトリの内容を書き換えておきました。

git pull origin master

git pullのあとのorigin masterは origin というリモートリポジトリの master というブランチからプルするという意味です。

これでリモートリポジトリの内容をローカルリポジトリに同期させることができました。

git pull を実行する場合の注意点

git pull は git fetch と git merge をまとめて行うコマンドです。そのため同じファイルの同じ個所を複数の開発者が修正した状態で実行すると git merge 同様、衝突(コンフリクト)を引き起こす場合があります。

その場合の表示と対処方法については下記の記事をご参照ください。

git merge コマンドで複数のブランチをマージする方法

git pull で使用可能なオプション

git pull コマンドにつけられるオプションには下記のようなものがあります。

マージせず、リベースする

git pull --rebase

git pull コマンドは通常 git fetch実行後マージを行いますが、このオプションを付けることでリベースすることができます。

早送り(fast-forward)せず、必ずマージコミットを作成する

git pull --no-ff origin master

早送り(fast-forward)可能であっても、必ずマージコミットが新しく作成されます。

このエントリーをはてなブックマークに追加

コメントを残す

頂いたコメントは一読した後表示させて頂いております。
反映まで数日かかる場合もございますがご了承下さい。