git fetch と git pull の違いについて詳しく見る

王林
リリース: 2024-04-27 21:34:33
転載
429 人が閲覧しました

详细了解git fetch与git pull的区别

git fetch と git pull は両方ともリモート リポジトリをローカル リポジトリに更新できます。では、両者の違いは何でしょうか? この問題を明確にするために言及する必要がある概念がいくつかあります。

FETCH_HEAD: これはローカル ファイルに記録されるバージョン リンクで、リモート ウェアハウスから削除されたブランチの最終バージョンを指します。
commit-id: 各ローカル作業が完了すると、git commit 操作が実行され、現在の作業がローカル リポジトリに保存されます。このとき、一意に識別できる commit-id が生成されます。シリアル番号。 git Push を使用すると、このシリアル番号もリモート ウェアハウスに同期されます。

上記の概念を踏まえて、git fetch について話しましょう
git fetch: これにより、git リモート内のすべてのリモート リポジトリに含まれるブランチの最新のコミット ID が更新され、.git/FETCH_HEAD ファイルに記録されます。 git fetch がリモート ウェアハウスを更新する方法は次のとおりです:
リーリー

(1) git fetch を直接使用する場合の手順は次のとおりです。

    ローカル リモート ブランチを作成および更新します。つまり、origin/xxx ブランチを作成して更新し、origin/xxx ブランチにコードをプルします。
  • FETCH_HEADにカレントブランチ-オリジン/カレントブランチの対応を設定します。その際に直接git mergeすると、origin/abcをabcブランチにマージできます。
(2)git フェッチオリジン

フェッチするリモートを手動で指定するだけです。ブランチが指定されていない場合、通常はデフォルトの master
が使用されます。

(3)git フェッチオリジン開発

リモートと FETCH_HEAD を指定し、このブランチのコミットのみをプルします。

git pull: まず、ローカルの FETCH_HEAD レコードに基づいて、ローカルの FETCH_HEAD レコードとリモート ウェアハウスのバージョン番号を比較します。次に、git fetch は、現在ポイントされているリモート ブランチの後続のバージョン データを取得します。をクリックし、 git merge を使用して現在のローカル ブランチとマージします。したがって、git pull は、git fetch と git merge の 2 つのステップを組み合わせたものであると考えることができます。 git pull の使用法は次のとおりです:
リーリー

したがって、git pull と比較すると、git fetch はリモートからローカルに最新バージョンを取得することと同等ですが、自動的にマージされません。選択的にマージする必要がある場合は、git fetch を選択することをお勧めします。効果が同じなら git pull の方が速いです。

以上がgit fetch と git pull の違いについて詳しく見るの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:linuxprobe.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート