これにより、次のことが可能になります。
- マスターアップストリームブランチのローカルバージョンのみを更新します(アップストリームリポジトリのすべてのブランチを更新するのではなく、実行に時間がかかる場合があります)
- (pullコマンドとは対照的に)すぐにマージをトリガーしません
次にgit merge
、はそのローカルバージョンのアップストリームマスターをリポジトリマスターブランチにマージしようとします。
したがって、ここでは、マスターはfetch
コマンドの場合、refspecです。
<refspec>
パラメータの形式<refspec>
は、オプションのプラス+、ソースref <src>
、コロン:、宛先refの順<dst>
です。
一致するリモート参照<src>
がフェッチされ、<dst>
が空の文字列でない場合は、それに一致するローカル参照が。を使用して早送りされ<src>
ます。
オプションのplus+
を使用すると、早送り更新が行われなくても、ローカル参照が更新されます。
ここでは、<dst>
が空であるため、一致するローカルブランチ(マスター)が更新されます。
マスターがいなければ、それは次のようになります。
git fetch upstream
上記のコマンドは、オプションを使用してデフォルト以外のrefspecを指定しない限り、すべてのブランチをリモート名前空間からコピーrefs/heads/
してローカル名前空間に格納します。refs/remotes/upstream/
branch.<name>.fetch