0
0
Read Time:16 Second
GitHubのリポジトリの変更をローカルに取得(マージまたはリベース)するには、
git pull origin main
で行えます。
※GitHubリポジトリのmain
ブランチの最新の変更をローカルにダウンロードし、ローカルのmain
ブランチにマージしています。
しかし、上記実施時に、エラー(次の一行)が表示されることがあります。
fatal: refusing to merge unrelated histories
このエラーは、ローカルの履歴とリモートの履歴が完全に異なる場合に発生します。
これは、通常、ローカルとリモートで別々の初期コミットから始めた場合などに見られるエラーです。
このエラーの背後にある理由は、Gitが不関連な履歴をマージすることでユーザーが意図しない変更を取り込むリスクを防ぐためです。
このエラーを解消するためには、不関連な履歴をマージする許可を与える必要があります。
これを行うには以下のコマンドを使用します。
git pull origin main –allow-unrelated-histories
※これにより、リモートの変更がローカルにマージされます。
※ただし、コンフリクトが発生する場合がありますので、注意が必要です。
※コンフリクトが発生した場合は、それを解消してから再度コミットし、プッシュを行います。
※--allow-unrelated-histories
オプションを使用する前に、何がマージされるのかを理解しておくことが重要です。予期しない変更が加えられる可能性がある為です。