git pullやgit fetchで「git –no-optional-locks 〜〜〜fetch origin error: cannot lock ref ○○」
今回はgit pullやgit fetchのコマンドを打ったときに下記のようなエラーが出たときの対処法についてご紹介いたします。
1 2 3 4 5 6 7 |
git --no-optional-locks -c color.branch=false -c color.diff=false -c color.status=false -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree fetch origin error: cannot lock ref 'refs/remotes/origin/〇〇/parent': 'refs/remotes/origin/feature/××/‘ exists; cannot create 'refs/remotes/origin/△△/parent' F (unable to update local ref) error: some local refs could not be updated; try running 'git remote prune origin' to remove any old, conflicting branches Completed with errors, see above |
git pullやgit fetchで「git –no-optional-locks 〜〜〜fetch origin error: cannot lock ref ○○」
結論から言うと、私の場合は下記のコマンドを打つことで直りました。
git remote prune origin
どうやら、Gitを使う上で「到達不能なコミット」というのができてしまい、このgit pruneを使うことでその「到達不能なコミット」のお掃除ができるようです。
「到達不能なコミット」は普通に使っている上ではめったに出ないようですが、私は遭遇してしまいました。
Gitを5年くらい使っていますが、5年目にして一回遭遇しました。
私は緊急の対応が必要なときにこのgit pullやgit fetchができなくて非常に焦りましたが、git pruneで直ったので良かったです。
終わりに
今回はgit pullやgit fetchのコマンドを打ったときにページの最初に書いたようなエラーが出たときの対処法についてご紹介いたしました。
ディスカッション
コメント一覧
まだ、コメントがありません