Closed4
brew update が "protocol error: bad pack header" で失敗する
ピン留めされたアイテム
Homebrew 4.0 から、 tap の git clone が必要なくなったらしい
手元の working directory は削除していいみたい
brew -v
でバージョンが 4.0 以上であることを確認
Homebrew 4.0.26
Homebrew/homebrew-core (git revision 6976065b175; last commit 2023-07-04)
Homebrew/homebrew-cask (git revision 2f82f6248c; last commit 2023-07-04)
Homebrew がバージョン 4 以下の場合は、 brew upgrade
などでアップデートする
untap してやる
brew untap homebrew/core
brew untap homebrew/cask
もしかしたら brew cleanup
だけで済むのかもしれない
brew update
を打つと次のようなエラーが出て失敗する
remote: aborting due to possible repository corruption on the remote side.
fatal: protocol error: bad pack header
対象は次のふたつ
- homebrew-core
- homebrew-cask
ここに書いてあるように、一度 --depth
オプションで shallow clone してから --unshallow
オプションでガッと落とすと成功した
cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
git fetch --depth 10
git fetch --unshallow
git rebase origin/master
homebrew-cask に対しても同じように実施してやる
cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask
git fetch --depth 10
git fetch --unshallow
git rebase origin/master
アップグレードガイドがないから、ちょっと手間取ったぜ……
このスクラップは2023/07/04にクローズされました