234

私はブランチマスターしか持っておらず、「git pull」を試みるたびにこのエラーが発生します。

error: Couldn't set refs/remotes/origin/master
From /var/lib/git/xxx/project
 ! a0f80ea..49177a3  master     -> origin/master  (unable to update local ref)

そして、「git pull origin master」を実行すると、次のようになります。

error: Couldn't set ORIG_HEAD
fatal: Cannot update the ref 'ORIG_HEAD'.

私は検索してきたが、理由を見つけることができません

4

25 に答える 25

455

私のチームと私は、SourceTree でプルを実行しているときに、ローカル ref を更新できないというこのエラーに遭遇しました。

2020年更新:以下の @Edward Yang の回答、この回答に対する @bryan のコメント、およびこの質問/回答git gc --prune=nowに従って、 と の両方を実行する必要がある場合がありますgit remote prune origin。前者のみを実行すると常にうまくいきましたが、pplの回答に基づいて、エラーのさまざまな原因に対処するには両方が必要だと思います.

使用したもの:

git gc --prune=now

これにより、重複した参照オブジェクトが削除され、問題が修正されます。

git 参照とプルーニングの詳細については、次のリンクを参照してください

今週の git ヒント

git-プルーンのドキュメント

git リファレンス

于 2014-12-03T17:44:16.740 に答える
230

私は以下のように解決しました:

git remote prune origin

于 2015-07-28T08:40:19.013 に答える
18

rm .git/refs/remotes/origin/master

それは私に働きます!

于 2018-08-06T03:37:12.587 に答える
8

git pullを実行しているユーザーが、リポジトリを作成したユーザーと同じであることを確認してください。ファイルのパーミッションが正しくありません。

于 2012-04-10T19:21:56.830 に答える
5

私にとってうまくいったのは:

git config --global fetch.prune true

これで自動的に prune が実行され続けます。

于 2020-09-10T17:50:35.520 に答える
4

リポジトリを再度複製し、破損したプロジェクトに .git フォルダーをコピーします。

于 2015-10-23T11:57:03.937 に答える
2

これは、大文字と小文字を区別しないファイル システムを使用している OSX で発生しました。どういうわけか、別の開発者が同じ名前で大文字と小文字が異なるブランチをプッシュしました: My-Branchvs my-branch

My-BranchおそらくファイルシステムがMy-Branch==と考えているため、プルを行ったときに、すでにチェックアウトして「ローカル参照を更新できません」というエラーが発生しましたmy-branch

Github を使用しているので、Github の GUI を介してブランチの 1 つを削除することで問題を解決できました。

于 2016-05-10T07:10:16.297 に答える
1

このエラー (ローカル参照を更新できません) は、最近パスワードを変更した場合や、Windows と Linux のログインを統合するための凝ったものがある場合にも発生する可能性があります。

于 2013-01-16T23:21:20.273 に答える
1

ロックされたブランチファイルを削除することでこれを修正しました。それは大雑把に思えるかもしれませんが、なぜそれが機能したのかわかりませんが、問題は解決しました (つまり、あなたが得ているのと同じエラー)

削除: .git/refs/remotes/origin/[locked branch name]

それから私はただ走った

git fetch

そしてgitファイルはそれ自体を復元し、完全に修復しました

于 2020-12-30T13:33:53.680 に答える
1

PC ユーザーの声 - 再起動します。

正直なところ、それは私にとってはうまくいきました。この方法で、破損だと思っていた2つの奇妙なgitの問題を解決しました。

于 2016-12-05T05:25:34.640 に答える