git 报 refusing to merge unrelated histories 错误

在一次推送代码到远端的时候,因为本人最开始没有在远端拉取项目,而是自己本地创建直接写的,拉取的时候就报了 refusing to merge unrelated histories 的错误。

  • 查阅了一些资料,了解到产生报错原因是:
    一个是本地库,一个是远端库,它们本是不相干的两个库,然后本地要去推送到远端, 不相干的库远端拒绝合并, 所以告知无法合并。
解决办法
  1. 强制合并的方法
git pull origin master --allow-unrelated-histories
  • 这个办法是在 pull 后面加上 --allow-unrelated-histories,把两个不相干的分支强行合并。

这个办法比较暴力,因为当时两个项目很多组件的引入方式不同,远端的引入方式比较冗余,还有代码可阅读性本人也觉得要差一些,本人想要保留自己写的部分代码,又不愿拉取下来一点一点的改(穿插太多),增加自己写的代码。所以直接强制合并保留了自己的那部分代码。这样做容易出bug。

  1. 远端拉取下来并增加自己的代码
  • 直接另外建个文件夹,拉取下来远端的代码吧,然后把自己的代码添加进去,因为这样要稍微细看一下代码,出bug的可能性要小一些(概率也不小)。

两种方式都不轻松,最好还是在拉取下的代码上面写代码好一些。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值