2010-05-24 72 views
0

我在主檔案庫(192.168.1.2)中創建了一個分支。 而在我的其他電腦,我做「$ git的拉--rebase」,我看如何查看在主檔案庫中創建的分支

Unpacking objects: 100% (16/16), done. 
From git+ssh://[email protected]/media/LINUXDATA/mozilla-1.9.1 
62d004e..b291703 master  -> origin/master 
* [new branch]  improv -> origin/improv 

但是,當我在我的本地庫做一個「git的分支」,我看到的只有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'? 

回答

2

嘗試$ git fetch origin首先。除此之外,你的Git版本可能不新鮮,所以你應該做的$ git checkout --track -b improv origin/improv

+0

+1使用比我更少的單詞。 > _> – 2010-05-24 05:09:32

1

要結帳,並從主共同創造的分支,你需要這樣做:

git checkout origin/master -b improv 

要列出遠程分支機構庫,你應該使用

git branch -r 

或只使用

git branch -a 

列出所有分支,包括遠程和本地分支。

+0

如果您當前的分支已經是'master',那麼您可以將checkout命令縮短爲'git checkout -b improv'。 – 2010-05-24 04:57:35

0

新分支即席提示存在於原點(您的主存儲庫)上,但在發出時不會被拉動$git pull command這是設計。在您的本地機器上,您可能需要執行諸如$git checkout --track origin/improv之類的操作來拉出brach並將其添加到您的本地曲目列表中。

2

你的情況,你有兩個問題:

  • 本地工作副本不是最新的,並且
  • 地方,你沒有一個improv分支來跟蹤複製在服務器上(類似於master跟蹤origin/master)。

首先,你需要運行:

$ git fetch 

將更新遠程裁判(本地,一個裁判origin/improv會出現)。然後,運行:

$ git checkout -b improv --track origin/improv 

要創建新的本地分支,improv,跟蹤服務器,origin/improv在樹枝上。 (此分支將在本地計算機上保持最新狀態。)當您運行git pull時,您當地的improv分支將自動合併服務器(因此您的另一臺計算機)上improv的更改。