Git'ten git rebase origin/development
sırasında aşağıdaki hata mesajı gösteriliyor:
fatal: refusing to merge unrelated histories
Error redoing merge 1234deadbeef1234deadbeef
Git sürümüm 2.9.0. Önceki sürümde sorunsuz çalışıyordu.
Yeni sürümde tanıtılan zorunlu bayrak ile ilgisiz geçmişlere izin veren bu yeniden düzenlemeyi nasıl devam ettirebilirim?
Varsayılan davranış Git 2.9'dan bu yana değişmiştir:
"git merge" ortak olmayan iki dalın birleştirilmesine izin vermek için kullanılır tabanının varsayılan olarak kullanılması, var olan bir geçmişin yepyeni bir proje oluşturulur ve daha sonra şüphelenmeyen bir bakımcı tarafından çekilir, Bu da gereksiz bir paralel geçmişin mevcut proje. Komut tarafından buna izin vermemesi öğretilmiştir varsayılan, bir kaçış kapağı
--allow-unrelated-histories
seçeneği ile İki projenin geçmişini birleştiren nadir bir olayda kullanılmak üzere hayatlarına bağımsız olarak başladılar.
Daha fazla bilgi için Git sürümü değişiklik günlüğüne bakın.
Birleştirmenin gerçekleşmesini zorlamak için `--allow-unrelated-histories' kullanabilirsiniz.
Benim durumumda, hata her denemede, özellikle de bir Git deposunu uzaktan ekledikten sonraki ilk çekme isteğinde sadece fatal: ilgisiz geçmişleri birleştirmeyi reddediyor
idi.
Bu şekilde bir çekme isteği ile --allow-unrelated-histories
bayrağı kullanılarak çalışıldı:
git pull origin branchname --allow-unrelated-histories
Ben de bununla mücadele ettim, ancak geçici bir çözüm bulmayı başardım.
Yukarıdaki hatayla karşılaştığınızda, sadece birleştirme işlemini seçin ve ardından yeniden düzenlemeye devam edin:
git cherry-pick -m 1 1234deadbeef1234deadbeef
git rebase --continue