今天公司需要给老项目加新功能,但是又不能影响原来的业务,于是需要新建一个仓库 直接说我遇到的问题: 1.原本仓库含有公共的子仓库模块,所以我在直接复制代码粘贴到新仓库的想法行不通。 2.新仓库只需要老仓库的maser分支,并且需要之前的代码提交记录。 解决办法 1.查看默认远程仓库的名字
git remote
会发现有一个orgin的名字,这个就是你的仓库默认的远程仓库名字 2.新建一个远程仓库名字
git remote add origin2(这替换你自己心目中的名字) master
这个origin2只要和上面git remote显示出来的名字不一样就可以 3.新建远程提交地址
git remote set-url origin2 git@git.hub.com:B.git
这个B.git就是你的新仓库地址 4.拉取老仓库代码让后提交到新仓库即可:
git pull
git checkout -b master(如果是master分支,这一步就可以不需要)
git push origin2
5.可能出现的问题fetch first,non-fast-forward 这是本地分支与远程分支版本不统一导致之,由于我的是新仓库 所以我不管他直接使用如下命令:
git push origin2 master -f
注:这条语句代表强制上传,如需要解决版本冲突自行百度 6.上传其他分支 如果需要上传其他分支重复第4的步骤切换老仓库的分支即可即可。
|