为什么git branch没有列出新创建的分支?

时间:2016-09-15 13:40:59

标签: git

对等方创建了一个新分支。

我跑了

git pull

git branch - 我没有看到他的新分支。

那么我......

git checkout newBranch

git branch - 现在我看到了他的新分支

为什么git branch仅在我checkout而非pull之后才更新?

4 个答案:

答案 0 :(得分: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

答案 1 :(得分:2)

如果要查看远程仓库上的所有分支,可以使用

git branch -a

我通常使用grep来找到我想要的分支。

git branch -a |grep <what I want>

如果您只是创建一个与您的同行分支同名的分支,那么您将不得不将其基于远程分支

你的同伴必须用

之类的东西推送到中央仓库
git push --set-upstream origin <branch name>

要使分支基于远程分支,您可以使用

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

答案 2 :(得分:0)

git branch 

显示本地分支

列出远程分支:

git branch -a 

获取所有远程分支:

git fetch

然后你可以

git checkout newBranch 

答案 3 :(得分:0)

在您的情况下,git checkout并未真正检出远程分支newName,而是创建了一个闪亮的新本地分支newName,该分支设置为跟踪远程分支。< / p>

因此,通过签出“newBranch”,您还创建了一个同名的本地分支“newBranch”,然后由git branch

自然显示