git pull
でローカルのブランチを更新しようとしたところ、下記のようなエラーになり pull が実行できませんでした。git pull origin ブランチ名
であれば成功するようで、特定のブランチが更新できない影響のようでした。
error: cannot lock ref 'refs/remotes/origin/***': is at XXXXX but expected XXXXX
From https://github.com/****
! XXXX..XXXX *** -> origin/Feature/*** (unable to update local ref)
解決
削除?変更?されたブランチがローカルに残ってしまったせいのようなので、リモートで削除されたブランチをローカルで削除したところ解決しました。
git remote prune origin
dry-run
オプションをつけることで、どのブランチが削除されるか確認できるようです。
git remote prune --dry-run origin
また、git pull --prune
でリモートで削除されたブランチを削除しつつ pull することができるようなので、こちらも有用そうです。