← エラー辞典に戻る

環境構築

fatal: refusing to merge unrelated histories

無関係な履歴のマージが拒否された

こんな症状

共通の祖先がない2つのリポジトリをマージしようとした。--allow-unrelated-historiesで許可できるよ。

まず試す

git pull origin main --allow-unrelated-histories で履歴を結合する。

env
git pull origin main --allow-unrelated-histories

これで直らなければ、下の「自分のケース」を確認。

🔍 自分のケースはどれ?

  • GitHubでREADME付きリポジトリを作った
    → git pull origin main --allow-unrelated-histories で結合する。
  • 結合時にコンフリクト
    → 該当ファイルを解決して commit する。
  • 今後避けたい
    → READMEを追加せず作る、または clone してから作業する。

なぜ起きる?

GitHubでREADME付きのリポジトリを作り、ローカルでもgit initして別々に履歴を作ってしまったよ。2つの履歴に共通の起点がないので、Gitが「これは別物では?」と警告するんだ。

✕ エラーが起きるコード
git pull origin main
# fatal: refusing to merge unrelated histories
✓ 直したコード
# --allow-unrelated-histories オプションを追加
git pull origin main --allow-unrelated-histories
# コンフリクトがあれば解決してcommit

✅ 直ったか確認

pull が完了し、履歴が1つに結合されればOK。

🆘 まだ直らないときは

git log --oneline --graph で履歴が繋がったか確認できる。

Q&Aで質問する →

この解決法は役立ちましたか?

🔗 関連するエラー

📖 この問題を学べるレッスン

環境構築ガイド(基礎から)で根本から理解する →

✏️ 手を動かして練習

練習ドリル一覧で実際に書いて確認する →

📝 関連ブログ記事

📖 関連する用語

🚀 環境構築ガイドで基礎を学ぼう!

エラーの原因を根本から理解するには、基礎を体系的に学ぶのが近道です。完全無料・登録不要。

環境構築ガイドを始める →

❓ 関連するQ&A