2017-03-07 37 views
4

我有一個關於如何獲取遠程倉庫的新枝可獲取的問題。的Git最佳實踐:讓分支機構的名單不跟蹤本地

我知道有(至少)兩種方式進行:

  • git pull:拉動當前分支(取+合併),並獲得新的分支機構
  • git branch -r其次git branch --track theBranch origin/theBranch列表:跟蹤新分支

是否有推薦的方法來進行(由於行爲差異)?

回答

3

我不知道有必要進行一個推薦的方式,因爲每個的兩個選擇做不同的事情,有不同的使用情況。

做一個git pull將獲取所有新的遠程跟蹤分支,以及更新現有分支,並應列出至少出現的新分支。但它實際上不會創建任何新的本地分支機構。

git branch -r將列出所有的遠程跟蹤分支,但實際上不會用遙控器上的任何新的信息更新。該命令

git branch --track theBranch origin/theBranch 

將創建一個名爲theBranch一個新的本地分支追蹤遠程分支跟蹤帶有相同的名稱。這將是相同的行爲,如果你要做到以下幾點:

git checkout origin/theBranch 
git checkout -b theBranch 

你選擇哪一個選項,使用取決於你的目標。如果你只是想更新遠程跟蹤分支也許列出任何新的分支機構進來,在做一個git fetch(或git pull)是令人滿意的。如果你想創建一個新的分支,那麼你的第二個選擇,或我給出的選項是要走的路。

+0

'git的結帳theBranch'是,在我看來,這樣做最簡單的方法。 – 1615903

1

由於@Tim Biegeleisen在他的回答中提到,這完全是高達你哪種方法你想跟隨。

我跟着git pull --rebase這實際上與遠程衍合我的本地分行,並承諾在它的上面,而不是git pullgit fetch其次git merge FETCH_HEAD我的局部變化。