前回Gitのpullについて説明しました。
今回はpullについてもう少し詳しく説明します。
今回はpullについてもう少し詳しく説明します。
前回pullについて説明しました。詳細はこちら
pullはGithub上のリモートリポジトリで変更があった場合に
自分のローカルに反映させるコマンドです。
Contents / 目次
pull=fetch+merge
pullは実際2段階の工程をまとめて実施していることになります。
今までリモートリポジトリとローカルリポジトリの2つについて述べてきました。
例えばリモートのリポジトリの履歴をリモートブランチ、
ローカルの履歴をローカルブランチとすれば、ローカルには
リモート情報を追跡する別ブランチが存在します。
fetchは取り込むということで、リモートブランチにローカルにある
リモート追跡ブランチに取り込みます。(変更内容を反映させる)
その後、リモート追跡ブランチをローカルブランチにmergeさせることで、
ローカルブランチに取り込むことができます。
fetchでリモートブランチをリモート追跡ブランチに取り込む
fetchコマンドを用いてGithubのclone元に変更があった場合、
その情報を取得してリモートブランチからリモート追跡ブランチに取り込みます。
$ git fetch "リモート名" "ブランチ名"
デフォルトではリモート名はorigin ブランチ名はmasterとなります。
$ git fetch origin master
merge origin/masterでリモート追跡ブランチからローカルブランチに取り込む
リモート追跡ブランチのブランチ名はorigin/masterと表記します。
$ git merge origin/master
上記コマンドで追跡ブランチ(origin/master)をローカルブランチに取り込みます。
終わりに
pull=fetch+merge
つまり、
git pull origin master = git fetch origin master + git merge origin/master
ということになります。
pullの概念が分かればGitの理解も少し深まりますね。
Have a nice Git life!