skillup

技術ブログ

Git

gitのfetchに関して

投稿日:2015年7月18日 更新日:

gitでリモートの変更を取り込む場合、大きく分けるとfetchとpullがあります。

両者の違いですが、

fetch=一度、変更を取り込んで、ローカルの変更と相違点を確認できます。確認後mergeを行うとローカルに変更を取り込むことができます。

pull=一気にローカルの変更を行います。

よく言われているのはpull = fetch + merge origin masterですね。

fetch とpullの違いについて
git fetchの理解からgit mergeとpullの役割

実際の取込ですが、下記のように行うとスムーズです。

1 取込
git fetch origin master

2 fetchになっているコミットをみる
fetchしたコミットの情報がみれます。
git log HEAD..FETCH_HEAD

3 差分の確認
ローカルのソースとfetchの差分です。
git diff HEAD..FETCH_HEAD

4 最終的にマージ
git merge FETCH_HEAD
ここでソースが以前のコミットから変更がある場合は、mergeできません。
この場合、git checkout リビジョン番号 ファイル名などで所定のリビジョンに戻すか一度コミットする必要があります。

gitもまだまだ分かっていないこと多いなー。

-Git

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

gitの作業ディレクトリ・インデックス・HEADに関して

gitを使い始めてしばらくたちますが、まだ明確なイメージがつかめていないです(汗) みようみまねでやっていて、ポイント、ポイントで困ったことは検索してなんとか対応してきましたが、体系的な理解ができてい …

no image

ファイルを戻したい時のGitコマンド(主にgit resetの用法)

使用ケースでGitコマンドを復習してみようかなと思いました。 主にgit resetの用法整理ですが・・・ Contents1 ローカルを間違ってaddしてしまい、インデックスへの変更を取り除きたい2 …

no image

追跡ブランチからローカルブランチを作る方法~ (svn→gitの移行など)

SVNで運用されていたプロジェクトをgitに移行する機会があったのでその時のメモなどを。 思ってたよりは楽だったかな・・・ Contents1 準備2 実際の移行(git svn clone)3 gi …

no image

Git→Jenkinsの連携

気がついたら投稿数が50超えてましたね。 ガチンコ塾とあわせて更新してますが、2ヶ月ちょいなので結構いいペースで更新しているかと思います。 大切なのはこれを継続できるかですね。ただ、ガチンコ塾に比べる …

no image

Gitについて基本頻出系

Gitでよく使うコマンドのまとめなんぞを。 Contents1 リポジトリ作成&基本設定2 リポジトリ取り込み系3 インデックス登録→コミット→リモート登録→プッシュ4 変更戻し系(基本的に中 …