git合并两个没有共同历史提交记录的分支:fatal: refusing to merge unrelated histories
场景:某个git仓库原有 master 分支,后面自己本地新建了一个项目,然后把新建的这个推到了这个仓库的另外一个分支 feature/vue-pc 。现在要对这两个分支进行合并,该如何操作?正常情况是直接git merge 这两个分支,但是git会报错:fatal: refusing to merge unrelated histories意思是:致命:拒绝合并不相关的历史,因为没有共同提交记录
·
场景:某个git仓库原有 master 分支,后面自己本地新建了一个项目,然后把新建的这个推到了这个仓库的另外一个分支 feature/vue-pc 。现在要对这两个分支进行合并,该如何操作?
正常情况是直接git merge 这两个分支,但是git会报错:
fatal: refusing to merge unrelated histories
意思是:致命:拒绝合并不相关的历史 ,因为没有共同提交记录历史,相当于是两个完全不同的仓库一样。
解决方案:采用git rebase --onto变基的方法
1.首先为了安全起见,先从master上拉出一个新的分支feature/vue-pc3进行操作。
git checkout -b feature/vue-pc3
2.然后把该分支提交到远程
git push --set-upstream origin feature/vue-pc3
(备注:不提交的话第三步rebase会报错如下图所示—待研究)
3.执行git rebase --onto 进行变基操作
git rebase --onto feature/vue-pc
4.然后在该分支上拉取允许不相关历史的操作,然后手动解决冲突。
git pull --allow-unrelated-histories
5.解决冲突以后,再按正常的步骤提交即可(如上图所示)。
git add .
git commit -m 'merge: xxx'
git push
更多推荐
已为社区贡献2条内容
所有评论(0)