Mac
PR

【Mac】brew updateでhomebrew-core/homebrew-cask is a shallow clone 解決(別のコマンド打つだけ)

コル
記事内に商品プロモーションを含む場合があります

こんにちは、コル(@bravecol)です。

今回はMacのHomebrewにてこのエラーに立ち会いました。

スポンサーリンク

brew update時にhomebrew-core/homebrew-cask is a shallow cloneでエラー

$ brew update
Error: 
  homebrew-core is a shallow clone.
  homebrew-cask is a shallow clone.
To `brew update`, first run:
  git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
  git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow
These commands may take a few minutes to run due to the large size of the repositories.
This restriction has been made on GitHub's request because updating shallow
clones is an extremely expensive operation due to the tree layout and traffic of
Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
automatically to avoid repeatedly performing an expensive unshallow operation in
CI systems (which should instead be fixed to not use shallow clones). Sorry for
the inconvenience!

理由 GitHubの要望により制限がかかったから

そもそもエラー文を日本語訳するとこうなります。(DeepL翻訳より)

これらのコマンドは、リポジトリのサイズが大きいため、実行に数分かかる場合があります。

この制限はGitHubの要望で行われました。Homebrew/homebrew-core と Homebrew/homebrew-caskのツリーレイアウトとトラフィックにより、クローン作成は非常に高価な操作となります。

CIシステム(シャロークローンを使用しないように修正する必要があります)で高価なアンシャロー操作を繰り返し行うことを避けるためこれを行いません。申し訳ございません。ご不便をおかけします。

つまりGitHubの要望によりshallow cloneすると時間や通信量が重いので、shallowじゃなくて完全cloneすることになりました、と。

まずはbrew updateを実行するためには表示したコマンドを実行してくれと言っています。

Errorって表示してるけど正直エラーな内容じゃないですね^^
だから指示に従えば万事解決。

解決策 表示されたコマンド打つだけ

僕の場合は表示されたコマンドを打つだけでOKでした。それぞれの開発環境によってパスは違うと思うのでお気をつけて。

git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow

本記事が開発の手助けになれば幸いです。

スポンサーリンク
運営者
コル
コル
技術探検家 / 子育て忍者
ウェディングプランナーからエンジニアへ異業種転職し、家族と田舎のとある村でリモートワークメインで生活中。今はフリーランスエンジニアとしてJava/Python/Go/Reactなどが経験多め。子育てとコーディングを巧みに両立する「忍者スタイル」でスローライフと気になる技術を日々探求中!たまに妻から「ボヤッキーみたい」と笑われながらも、技術やガジェット関連をテーマにブログを更新しています。
記事URLをコピーしました