在我们多人协作使用git过程中可能出现如下情景:
倘若项目仓库有多个分支,我在本地切换到另外一个分支,在执行git pull
拉取分支内容时git会提示:
git branch --set-upstream-to=origin/<branch> xxxx
xxxx为当前本地分支名
实际上就是git提示你要本地分支与远程分支建立连接才能直接执行git pull拉取项目。
如:
我现在切到分支feature-test
,我需要拉去最新内容。
现在有两种做法:
-
直接执行
git pull origin feature-test
这样没问题,直接指定了远程分支 -
执行
git pull
这时候会提示:
git branch --set-upstream-to=origin/<branch> feature-test
咋一看是不是有点懵逼,哪里才是我要替换进去的?
以上提示中,<branch> 是本地分支对应的远程分支名
, 毕竟本地分支名不必与远程分支名相同,我只需建立这种对应关系即可,git就会知道我本地这个分支名是对应着那个远程分支。
现在我的远程分支名也是feature-test
,所以直接就执行:
git branch --set-upstream-to=origin/feature-test feature-test
随后提示:
分支 feature-test 设置为跟踪来自 origin 的远程分支 feature-test
这样就可以直接使用git pull拉去当前分支对应远程分支的内容啦。
当然,如果说有个远程分支名为feature-dog
的,你想本地分支跟这个远程分支建立连接关系,那就
git branch --set-upstream-to=origin/feature-dog feature-test
之后在本地分支feature-test
执行git pull
, 拉取的将会是远程分支feature-dog
的最新内容