【前言】我们在Github里fork了一个仓库后会发现自己的仓库里只有一个分支,就是源仓库的主分支,这个时候我们想在其他分支上贡献代码,应该怎么办呢?因为有时候我们可能会想把修改同步到多个分支。
查看当前分支:
git branch -a
该仓库的主分支为release/2.6,此时我已经切换到了develop分支
可以看到远程分支分为origin和upstream两种,origin即为我们的仓库,upstream即为上游仓库
直接切到develop的话会拉取上游仓库的分支,如图:
所以我们需要手动的把develop分支拉取到我们的仓库,怎么拉呢?
先把upstream的分支拉到本地,再推送到origin仓库
上面我已经把develop分支拉到了本地,这里直接推送:
git push origin develop
可以看到推送完之后自动在远程仓库创建了一个develop分支
再次查看分支:
此时多了一个origin/develop分支,这就是我们刚才创建的分支。
但此时本地的develop分支跟踪的还是upstream仓库的分支,是没有权限推送的,所以还需要修改一下develop跟踪的分支,使用-u选项:
$ git branch -u origin/develop
或者把本地的develop分支删掉,重新拉取origin的分支
之后就可以往origin仓库推送,并向upstream仓库的develop分支提PR了。
版权归原作者 有泽改之_ 所有, 如有侵权,请联系我们删除。