問題

私はmasterdevelopmentブランチを持っていて、どちらも GitHub にプッシュされています。私はclone d、pull ed、fetch edを持っていますが、masterブランチ以外のものは取得できません。

私は明白な何かを見逃していると確信していますが、私はマニュアルを読んでおり、喜びは全くありません。

  ベストアンサー

まず、リモート Git リポジトリと cd をクローンします。

 $ git clone git://example.com/myproject
$ cd myproject
 

次に、リポジトリ内のローカルブランチを見てください。

 $ git branch
* master
 

しかし、あなたのリポジトリには他のブランチが隠れています! -aフラグを使ってこれらを見ることができます:

 $ git branch -a
* master
  remotes/origin/HEAD
  remotes/origin/master
  remotes/origin/v1.0-stable
  remotes/origin/experimental
 

上流のブランチをすばやく覗きたい場合は、直接確認することができます。

 $ git checkout origin/experimental
 

しかし、そのブランチで作業したい場合は、自動的に行われるローカルトラッキングブランチを作成する必要があります。

 $ git checkout experimental
 

ご覧の通り

 Branch experimental set up to track remote branch experimental from origin.
Switched to a new branch 'experimental'
 

その最後の行はいくつかの人を投げます: "新しい支店" - え? 本当に意味することは、ブランチがインデックスから取得され、ローカルに作成されることです。前の行は、ブランチがリモートブランチを追跡するように設定されていることを示すため、実際にはより有益です。これは通常、origin/branch_nameブランチを意味します

さて、あなたの地元の枝を見ると、これがあなたが見るものです:

 $ git branch
* experimental
  master
 

実際には git remote を使って複数のリモートリポジトリを追跡することができます。

 $ git remote add win32 git://example.com/users/joe/myproject-win32-port
$ git branch -a
* master
  remotes/origin/HEAD
  remotes/origin/master
  remotes/origin/v1.0-stable
  remotes/origin/experimental
  remotes/win32/master
  remotes/win32/new-widgets
 

この時点で、物事はかなり狂っているので、gitkを実行して何が起こっているかを確認します。

 $ gitk --all &
 

  同じタグがついた質問を見る

gitgithubgit-branchgit-cloneremote-branch