git fetch --prune を実行して更新する
このステップでは、リモートリポジトリの最新の変更をローカルの Git リポジトリに反映する方法を学びます。他の人と一緒にプロジェクトを進めていて、彼らが変更を加えて中央サーバーにプッシュしたとしましょう。あなたはそれらの変更を自分のローカルコピーに取り込む方法が必要です。
このために使用するコマンドは git fetch
です。このコマンドは、リモートリポジトリからコミット、ファイル、参照 (refs) をダウンロードしてローカルリポジトリに取り込みます。これは、サーバーから最新の更新を取得するが、実際には現在の作業にマージしないようなものです。
また、--prune
オプションも使用します。このオプションは、リモート上に存在しなくなったリモート追跡ブランチを削除します。これにより、リモートブランチのリストをきれいに保ち、最新の状態にすることができます。
リモートリポジトリが設定されていると仮定しましょう(リモートを追加する方法は、将来の実験で説明します)。今は、リモートからのフェッチをシミュレートします。
ターミナルを開き、~/project/my-time-machine
ディレクトリにいることを確認して、次のコマンドを実行します。
cd ~/project/my-time-machine
git fetch --prune origin
次のような出力が表示されることがあります(正確な出力はリモートリポジトリによって異なります)。
From origin
* [new branch] feature/new-feature -> origin/feature/new-feature
- [deleted] (none) -> origin/old-branch
この出力は、Git が新しいブランチ (feature/new-feature
) をフェッチし、リモート上に存在しなくなったブランチ (old-branch
) を削除したことを示しています。
git fetch --prune
を実行することは、リモートリポジトリのローカルビューを正確に保つための良い習慣です。これにより、他の人が行った変更を自分の作業に統合する前に確認することができます。