2012-01-16 104 views
17

有人推了「新功能」分支到共享回購:現在如何在Git中籤出遠程分支?

git push -u new_feature_branch 

,我想,以測試新的功能,我的本地機器上創建這個分支的副本。

最簡單的方法是什麼? (我需要fetch/pullcheckout前?)

+0

可能被複制。 http://stackoverflow.com/questions/1783405/checkout-remote-git-branch – 2015-09-22 22:02:17

+2

可能重複的[如何檢查遠程Git分支?](https://stackoverflow.com/questions/1783405/how- do-i-check-out-a-remote-git-branch) – SudoRahul 2017-06-15 10:15:02

回答

26

我一般覺得沒必要用git fetchgit pull就足夠了。 git pull將使您的存儲庫與遠程同步。然後new_feature_branch將可用。

git checkout new_feature_branch會注意到分支的來源併爲您創建一個新的本地跟蹤分支並切換到該分支。

git pull 
git checkout new_feature_branch 
+1

git pull == git fetch + git merge – 2017-10-24 09:17:04

11

您需要獲取上游變化,使本地資源庫包括相關對象(git fetch --allgit fetch <remote>)。

之後,您可以執行使用git checkout <branch>結帳(如果你想明確地做到這一點,你可以鍵入git checkout -b <branch> <remote>/<branch>;本地名不必是相同的遙控器)。如果您還沒有該名稱的本地分支,它將檢出遠程分支並對其進行跟蹤。

作爲替代方案,您可以使用git pull <remote> <branch>,但是這將使用默認設置將遠程分支合併到當前,這可能不是您想要的。

+0

我想知道爲什麼這個答案說你必須使用'fetch -all',而最上面的答案只是提到'fetch'。哪一個? – 2017-07-18 13:27:00

+1

@PetriSirkkala答案並不是說你必須使用'--all'。 'fetch --all'表示獲取所有的遙控器(如果你有更多的例如'origin')。 – 2017-12-11 14:38:54

15

做到這一點,最簡單的方法是:

git fetch 
git checkout -t origin/new_feature_branch 

這只是初步完成。從現在開始,您可以繼續與分支機構一起工作,就像您爲其他人使用一樣。

1
git fetch && git checkout new_feature_branch 
+0

如果你有時間,你可以請看看這個問題。 http://stackoverflow.com/questions/20634111/magento-error-when-disable-module – 2015-11-12 08:24:16