工作中遇到的场景:
A库的master分支 和 B库的master分支 要弄到C库中,先搞2个单独分支,后续进行合并。
B仓库是一个空仓库,除了默认的master分支,没有任何分支。把A的branch1,branch2,branch3…依次迁入B,B也就有branch1,branch2,branch3,
- 进入A工程
- git remote
原因:看下当前远程仓库有啥名字,然后取个崭新的、不重复的名字,名字是过渡,不必纠结取啥名字因为名字不是关键绑定的url才是,看下一步。这里取名origin2
- git remote add origin2(这替换你自己心目中的名字) master
不纠结照抄这就话
- git remote set-url origin2 git@git.hub.com:B.git
原因:后面的B仓库地址url才是关键,origin2只是过渡,百人百种起法
- 进入A工程的branch1分支上
- git pull
原因:拉取一下最新代码
- git checkout -b branchB1
原因:branchB1是基于A工程branch1开的新分支,代码跟A工程branch1一毛一样,但是这个名字branchB1非常重要,非常重要,原因只有一个:这个分支会被推到B工程,结果就是B工程下面就有这个分支。所以你懂的,万一你的B工程下面已经有了该分支名字,你这个做了好多工作的branchB1是根本推不上去的,是不是很疯狂
- git push origin2
结果:这一步能不能成功就看上一步,不多说,就看你取名字瞎不瞎
原文地址:https://www.jianshu.com/p/25df045cbc08 (感谢,侵删)