
1. clone 時(shí)
git clone xxx.git自動(dòng)創(chuàng)建一個(gè)跟蹤 origin/master 的 master 分支。若 clone 的時(shí)候想跟蹤別的分支:
git clone -b yyy xxx.git
若分支遠(yuǎn)程不存在,則會報(bào)錯(cuò):

2.創(chuàng)建新分支時(shí)
直接創(chuàng)建一個(gè)本地分支跟蹤遠(yuǎn)程分支:
git checkout -b xxx origin/xxx設(shè)置不同的分支名:
git checkout -b yyy origin/xxxhttps://www.freecodecamp.org/news/git-checkout-remote-branch-tutorial/
由于此命令太常用,所以有個(gè)快捷方式:
git checkout --track origin/xxx則會自動(dòng)創(chuàng)建一個(gè)本地 xxx 分支跟蹤 origin/xxx,還有更進(jìn)的捷徑:比如你本地檢出了一個(gè)本地不存在的分支 test 且遠(yuǎn)程剛好有一個(gè)與之對應(yīng)的遠(yuǎn)程分支 origin/test,則會自動(dòng)創(chuàng)建關(guān)聯(lián)。
git checkout test
這里有一個(gè)前提是使用 git fetch 來同步遠(yuǎn)程倉庫有的數(shù)據(jù)而本地沒有的,不然則會出現(xiàn)下面的錯(cuò)誤:

使用 fetch 更新:

本地已經(jīng)切出一個(gè)新分支,推送到遠(yuǎn)程:

3. 設(shè)置已有分支時(shí)
查看分支跟蹤情況:
git branch -vv
現(xiàn)在把 feature 的上游分支改為 test:
git branch -u origin/test//orgit branch --set-upstream-to origin/test
git branch -vv 再次查看下:
