git無法pull倉庫refusing to merge unrelated histories (拒絕合並不相關倉庫)


原文地址 https://blog.csdn.net/lindexi_gd/article/details/52554159

 

本文講的是把git在最新2.9.2,合並pull兩個不同的項目,出現的問題如何去解決

如果合並了兩個不同的開始提交的倉庫,在新的 git 會發現這兩個倉庫可能不是同一個,為了防止開發者上傳錯誤,於是就給下面的提示

fatal: refusing to merge unrelated histories

如我在Github新建一個倉庫,寫了License,然后把本地一個寫了很久倉庫上傳。這時會發現 github 的倉庫和本地的沒有一個共同的  commit  所以  git  不讓提交,認為是寫錯了  origin  ,如果開發者確定是這個 origin 就可以使用  --allow-unrelated-histories  告訴 git 自己確定

遇到無法提交的問題,一般先pull 也就是使用  git pull origin master  這里的  origin  就是倉庫,而  master  就是需要上傳的分支,因為兩個倉庫不同,發現 git 輸出  refusing to merge unrelated histories  無法 pull 內容

因為他們是兩個不同的項目,要把兩個不同的項目合並,git需要添加一句代碼,在  git pull  之后,這句代碼是在git 2.9.2版本發生的,最新的版本需要添加  --allow-unrelated-histories  告訴 git 允許不相關歷史合並

假如我們的源是origin,分支是master,那么我們需要這樣寫 git pull origin master --allow-unrelated-histories  如果有設置了默認上傳分支就可以用下面代碼

 git pull --allow-unrelated-histories 
  • 1

這里寫圖片描述

這個方法只解決因為兩個倉庫有不同的開始點,也就是兩個倉庫沒有共同的 commit 出現的無法提交。如果使用本文的方法還無法提交,需要看一下是不是發生了沖突,解決沖突再提交


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM