问题背景:
源仓库(mindspore/mindspore) 新建了一个分支r1.8,本地自己fork源仓库的 私有仓库(shenwei/mindspore) 没有这个分支。现在需要将源仓库的分支同步到本地的仓库中去。
1、这边是我本地的仓库的情况:mindspore是源仓库,origin是我本地fork的仓库。
![](https://i-blog.csdnimg.cn/blog_migrate/6364df07f6f96b78d8c0b985280ae8cc.png)
2、可以看到本地仓库的分支中并没有r1.8分支。
![](https://i-blog.csdnimg.cn/blog_migrate/884ff8c831c68a575f016f2843eb5e60.png)
解决方案:
1、创建并切换到新的上游分支到本地
git checkout -b r1.8 mindspore/r1.8
- 此时输入命令
git branch -vv
查看当前分支的详细情况,可以看到切换的r1.8分支依然是指向源仓库的。
![](https://i-blog.csdnimg.cn/blog_migrate/96d9b9b4ba36996c9ac6d15f9ae5bedd.png)
2、将新的分支推送到个人fork的仓库(shenwei/mindspore)
git push -u origin r1.8
注:-u跟踪指定的远程
- 此时输入命令
git branch -vv
查看当前分支的详细情况,可以看到切换的r1.8分支已经是指向自己fork的仓库了。
![](https://i-blog.csdnimg.cn/blog_migrate/0f12de8cc3dd4a6860d7b776420ed360.png)
最终结果:
最终推上去之后,可以在自己fork的仓库中看到该分支。
![](https://i-blog.csdnimg.cn/blog_migrate/f94337b4dc9ea1a5d2338e518fe5dc36.png)