誰かが というブランチtest
をgit push origin test
共有リポジトリにプッシュしました。 というブランチを見ることができますgit branch -r
。リモート ブランチをチェックアウトするにはどうすればいいですかtest
? 試したこと:
git checkout test
何もしないgit checkout origin/test
与える* (no branch)
ベストアンサー1
回答は、リモート リポジトリが 1 つ構成されているか複数構成されているかによって分割されています。これは、リモート リポジトリが 1 つの場合は、あいまいさが少なくなるため、一部のコマンドを簡略化できるためです。
Git 2.23 用に更新されました:古いバージョンについては、最後のセクションを参照してください。
リモコン1つで
どちらの場合も、まずリモート リポジトリからフェッチして、最新の変更がすべてダウンロードされていることを確認します。
$ git fetch
これにより、すべてのリモート ブランチが取得されます。チェックアウト可能なブランチは、次のようにして確認できます。
$ git branch -v -a
...
remotes/origin/test
で始まるブランチは、remotes/*
リモート ブランチの読み取り専用コピーと考えることができます。ブランチで作業するには、そこからローカル ブランチを作成する必要があります。これは、Git コマンドswitch
(Git 2.23 以降) で、リモート ブランチの名前 (リモート名は除く) を指定して行います。
$ git switch test
この場合、Git は、--no-guess
同じ名前のリモート ブランチをチェックアウトして追跡しようとしていると推測します ( で無効にできます)。
複数のリモコン付き
複数のリモート リポジトリが存在する場合は、リモート リポジトリに明示的に名前を付ける必要があります。
前と同様に、まず最新のリモート変更を取得します。
$ git fetch origin
これにより、すべてのリモート ブランチが取得されます。チェックアウト可能なブランチは、次のようにして確認できます。
$ git branch -v -a
リモート ブランチが手元にあるので、興味のあるブランチをチェックアウトして、-c
新しいローカル ブランチを作成する必要があります。
$ git switch -c test origin/test
使用に関する詳細についてはgit switch
、以下を参照してください。
$ man git-switch
Git 2.23 より前
git switch
Git 2.23 で追加されましたが、それ以前はgit checkout
ブランチを切り替えるために使用されていました。
単一のリモート リポジトリのみでチェックアウトするには:
git checkout test
複数のリモートリポジトリが設定されている場合は、少し長くなります
git checkout -b test <name of remote>/test