2016-03-15 89 views
0

我創建了一個使用SourceTree和git流(按下按鈕)的功能分支。然後我試圖將這些分支克隆到另一個本地副本中,但我無法再在本地獲得這些分支。舉例來說,如果我發出:獲取使用gitflow創建的分支?

的Git分支-v -a,我看到:

[email protected] MINGW64 /C/Dogwood (develop) 
$ git branch -v -a 
* develop       de5e2f2 Updated to Build 4.1.6.37 
    master       0aa9613 Release 4.1.6.37 
    remotes/origin/HEAD    -> origin/master 
    remotes/origin/develop   de5e2f2 Updated to Build 4.1.6.37 
    remotes/origin/feature/cleanups ef035e9 Added alert dialog 
    remotes/origin/master   0aa9613 Release 4.1.6.37 

所以遙控器/ *被git的流動產生。我只創建開發和手動掌握

但是,如何輕鬆地將所有遙控器克隆回本地驅動器?

我試圖

git fetch 

,但不知道它做了,因爲如果我發出

git branch 

我只有我的驅動器上看到的兩個主要分支。

* develop 
    master 
[email protected] MINGW64 /C/Dogwood (develop) 

有沒有簡單的方法克隆所有這些分支,而不需要重新克隆整個回購?

thx!

+1

你應該可以做git checkout remote_branch_here。 http://stackoverflow.com/questions/1783405/checkout-remote-git-branch –

回答

0

如果你想在本地獲得遠程分支,你需要檢查它。 當你

git checkout feature/cleanups 

混帳應該足夠聰明認識到這是一個遠程倉庫,並自動創建一個用於跟蹤遠程版本分支的本地副本。如果這不起作用,你可能會運行舊版本的git,我會建議嘗試更新。另一種適用於舊版本的方法是

git checkout --track origin/feature/cleanups 

您也可以從SourceTree工作。找到並雙擊Remotes> origin下的分支。它創建一個彈出框來檢出一個新的分支;默認值應該是OK。

這就是說,你描述的行爲有點奇怪。在克隆本地存儲庫時,您應該獲得精確的副本,包括功能分支。你說你試圖「克隆這些分支」。你克隆版本庫,而不是分支。您可以使用--single-branch選項(請參閱docs)克隆僅獲得一個分支的存儲庫副本,但是對此的使用有限。