git踩坑之refusing to merge unrelated histories

941 阅读1分钟

遇到问题的分析

  1. 当在github上新建仓库并默认有README.md,而又没有拉到本地而是直接在本地上新建项目并关联git,等想上传代码时:
    git add .   
    git commit -m "init project"
    git push -u origin master

会遇到报错不让提交.....

  1. 此时想把远程分支拉下来合并再提交,于是
    // 把远程master分支拉下来并在本地新建一个temp保存
    git fetch origin master:temp
    
    // 查看当前分支与temp分支的不同
    git diff temp
    
    // 合并
    git merge temp

于是会出现:refusing to merge unrelated histories

解决方式

// 合并分支(允许没有关联的两个分支)
git merge temp --allow-unrelated-histories

// 合并完成后删除temp
git branch -d temp

git add .
git commit -m "init project"
git push -u origin master

成功!!!!!!