Git pullできない時の対処法【原因別に徹底解説】
Gitでpullができないときの主な原因と対処法をわかりやすく解説します。認証エラーや競合、履歴の不整合など、初心者がよく遭遇するトラブルを解消するためのガイドです。
「git pullできない!」ときに落ち着いて確認しよう
Gitで
git pull
を実行しても失敗することは珍しくありません。この記事では、pullできないときのよくある原因と対処法を、ケース別にわかりやすく紹介します。
ケース①:認証エラー(Permission denied)
エラーメッセージの例
Permission denied (publickey). fatal: Could not read from remote repository.
原因と対処法
- SSHキーが登録されていない → GitHubなどに公開鍵を登録
- HTTPS認証情報が期限切れ → トークンを再発行し再ログイン
ssh -T git@github.com
で接続確認ができます。
ケース②:コンフリクトが原因でpullできない
エラーメッセージの例
error: Your local changes to the following files would be overwritten by merge:
原因と対処法
- ローカルに未コミットの変更がある状態でpullしようとしている
解決策
- 一時退避(stash)
git stash
- pull後に復元
git pull origin main git stash pop
ケース③:rebase/pull拒否エラー
エラーメッセージの例
fatal: refusing to merge unrelated histories
解決策
git pull origin main --allow-unrelated-histories
履歴の接点がない場合、上記オプションで統合を許可します。
ケース④:ローカルの変更がリモートに合わない(非fast-forward)
エラーメッセージの例
! [rejected] main -> main (non-fast-forward)
解決策
リモートの変更を先に取り込む:
git pull origin main --rebase
またはマージ:
git pull origin main
ケース⑤:ブランチ名の指定ミス
原因と対処法
→main
など、ブランチ名が異なっている可能性がありますmaster
解決策
git branch -r
でリモートブランチを確認し、正しいブランチ名を指定しましょう。
まとめ:pullできないときはエラーメッセージを冷静に読む
Git pullに失敗した場合は、まずエラーメッセージをよく読むことが重要です。原因ごとに対処法が異なるので、この記事のように状況を切り分けながら落ち着いて対応すれば、ほとんどの問題は解決できます。

編集部