我在主存储库(192.168.1.2)中创建了一个分支。 在我的另一台电脑中,我做了'$ git pull --rebase',我看到了
Unpacking objects: 100% (16/16), done.
From git+ssh://richard@192.168.1.2/media/LINUXDATA/mozilla-1.9.1
62d004e..b291703 master -> origin/master
* [new branch] improv -> origin/improv
但是当我在我的本地存储库中执行'git branch'时,我只看到1个分支并且我做了'$ git checkout improv'
$ git branch
* master
$ git checkout improv
error: pathspec 'improv' did not match any file(s) known to git.
Did you forget to 'git add'?
答案 0 :(得分:2)
在您的情况下,您有两个问题:
improv
分支(类似于master
跟踪origin/master
的方式)。首先,您需要运行:
$ git fetch
将更新您的远程引用(在本地,将出现引用origin/improv
)。然后,运行:
$ git checkout -b improv --track origin/improv
创建一个新的本地分支improv
,用于跟踪服务器上的分支origin/improv
。 (此分支将在您的本地计算机上保持最新。)当您运行时,您的本地improv
分支将自动合并服务器(以及您的其他计算机)上improv
的更改{ {1}}。
答案 1 :(得分:1)
首先尝试$ git fetch origin
。除此之外,你的git版本可能不那么新鲜,所以你应该$ git checkout --track -b improv origin/improv
答案 2 :(得分:1)
要从母版一起结帐并创建分支,您需要这样做:
git checkout origin/master -b improv
要列出远程存储库中的分支,您应该使用
git branch -r
或只是使用
git branch -a
列出所有分支,包括远程分支和本地分支。
答案 3 :(得分:0)
新分支Improv存在于原点(您的主存储库)上,但在发出$git pull command
时未被提取。这是设计使然。在本地计算机上,您可能希望执行$git checkout --track origin/improv
之类的操作来拉动并将其添加到本地轨道列表中。