git fetch がリモート追跡ブランチをフェッチすると、コピーが生成されますか?
巴扎黑
巴扎黑 2017-06-22 11:52:57
0
1
911

Pro git の「リモート ブランチ」を学習するときにこの質問が生じます。

質問:
git fetch がリモート追跡ブランチを取得すると、ローカル コピーが生成されますか?

最初に元の説明を読んでください。

作業を同期するには、git fetchorigin コマンドを実行します。このコマンドは、「origin」サーバー (この場合は git.ourcompany.com) を検索し、そこからローカルで利用できないデータをフェッチし、ローカル データベースを更新して、オリジン/マスター ポインタを新しいサーバーを指すように移動します。 、場所を更新しました。

図から、マスター ブランチはローカルであるため、リモート ウェアハウス (f4265 サブミッション ポイント) のクローンを作成した後、2 つのローカルサブミッションが行われ、新しいサブミッション チェーンが生成されます。同時に、サーバー上の他の誰かが、サーバーに送信されたマスター ブランチ (31b8e、190a3) をプッシュしたため、git fetchorigin を使用する場合、私の理解は次のとおりです:
ローカルのマスター ブランチは影響を受けません。フォークから フェッチの前にオリジン/マスターから開始して、新しいブランチがローカルに生成されます。このブランチはコピーをローカルに生成し、同時にオリジン/マスター ポインターはローカル コピーの末尾を指します。

しかし、以下を読んだ後、次の段落が表示されます:

特に注意すべき点は、新しいリモート追跡ブランチがキャプチャされたときに、編集可能なコピー (コピー) がローカルで自動的に生成されないことです。言い換えれば、この場合、新しいserverfixブランチは存在せず、変更不可能なorigin/serverfixポインタが存在するだけです。

分かりません、私のこれまでの理解は間違っているのでしょうか?では、図 32 の図も間違っているのでしょうか? 2 つのコミット ポイント (31b8e、190a3) はローカルではまったく取得されず、新しい起点/マスター ポインターのみがデータベースで取得されます。本文の原文では「ローカルで利用できないデータを取得し、ローカルデータベースを更新する」と書かれているが非常に曖昧で、データが何なのかについては書かれていない。

巴扎黑
巴扎黑

全員に返信(1)
给我你的怀抱

何も問題ありません。

ローカルで利用できない

データをキャッチし、ローカルデータベースを更新して、origin/masterポインタを新しく更新された場所に移動します。

これに集中してください、このブランチがマスターです。

新しいリモート追跡ブランチがフェッチされるとき、ローカルブランチは
編集可能な

コピー(コピー)を自動的に生成しません。 言い換えれば、この場合、新しいserverfixブランチは存在せず、変更不可能なorigin/serverfixポインタが存在するだけです。 そのため、

を使用して
編集可能な

ローカル コピーを作成する必要があります。 git checkout -b serverfix origin/serverfix master ブランチのみが 編集可能な

ローカル コピーを作成します。他のブランチはすべて

にあります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート