2016-09-15 22 views
1

ピアが新しいブランチを作成しました。gitブランチが新しく作成されたブランチを表示しないのはなぜですか?

私は

git pull

git branchを走った - 私は彼の新しいブランチを見ていません。

それではI ...

git checkout newBranch

git branch - 今、私は彼の新しいブランチを参照

私はpull後に代わりのcheckoutを実行した後になぜgit branchのみ更新したのですか?その後、

git fetch 

することができます

git checkout newBranch 

git branch -a 

は、すべてのリモートブランチを取得するには:

答えて

3

私が理解している限り、git branchにはあなたのローカルブランチのみが記載されています。あなたのリポジトリにはまだリモートブランチがあるので、なぜブランチをチェックアウトすることができますか?そして、そのブランチをチェックアウトしたら、そのブランチのローカルバージョンを作成します。

なぜ、git branchにチェックアウトした後にブランチが表示されるのですか?リモートレポに全ての枝を見たい場合は

git branch -a - Lists all branches, both local and remote-tracking branches 
git branch or git branch --list - Lists all existing local branches 
git branch -r - Lists remote-tracking branches 
0
git branch 

は、リモートブランチを一覧表示する地元の支店

を示し

+0

git branchで示されている均等という名前のローカルブランチ「newBranch」を作成しましたか? –

+0

ローカルリポジトリで今すぐ取得した後。 – chenchuk

+0

さて、元の質問に戻ります。私は 'git pull'を実行しました。これは' git fetch'を実行するのと同じです。ブランチはローカルブランチであるので、 'git branch'を実行するとなぜ表示されませんか? –

2

私は通常、私が欲しいの枝を見つけるためにはgrepでこれを使用

git branch -a 

使用することができます。あなたは自分のピアの支店と同じ名前のブランチを作成した場合

git branch -a |grep <what I want> 

それはあなたがあなたのピアがあり

を有する中央リポジトリにプッシュするリモートブランチのオフに、それをベースにする必要が動作しません。

git push --set-upstream origin <branch name> 

のようなものは、あなたが使用できるリモートブランチのを離れてあなたのブランチをベースに

git checkout -b <branch_name> origin/<branch name> 
+0

'git checkout newBranch'を使ってブランチのコピーをローカルに取得しました。私は 'git log'をチェックし、彼の変更を見ます。 –

+0

'git branch'はローカルブランチをリストします。利用可能ですが、ローカルブランチを作成して追跡する必要がない場合は、リモートブランチです。 'git checkout newBranch'を実行することで、gitはリモートリポジトリの同等のブランチを追跡したいと仮定し、ローカルブランチを作成し、' git branch'がそれをリストアップすると仮定しました。 –

0

あなたのケースでは、git checkoutは実際にはリモートブランチnewNameをチェックアウトしません。代わりに、光ブランチの新しいローカルブランチnewNameが作成され、リモートブランチを追跡するように設定されています。

したがって「newBranch」をチェックアウトすることにより、あなたも、あなたがnewBranchはまだリモートブランチと考えられているフェッチしたら、その後、自然

関連する問題