症状
1 2 3 4 5 6 7 8 9 |
% brew update Error: homebrew-core is a shallow clone. To `brew update` first run: git -C "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core" fetch --unshallow 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. 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! |
解決方法
『unshallow(浅いクローン無効)』でgitリポジトリ "homebrew-core" をクローン(再フェッチ)する。
1 |
% git -C "/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core" fetch --unshallow |
-C
: 指定したフォルダでgitコマンドを実行する。cdコマンドでカレントフォルダを移動してから, gitコマンドを実行する手順を省略する。
補足説明
サーバ上のリポジトリをクローンする(取得する)とき、一般的なユーザーは過去の全てのソースコードや完全な履歴を取得する必要はない。そこで『shallow clone(浅いクローン)』の仕組みを使い、ネットワーク転送時間とローカルストレージサイズの節約を図る。しかし "homebrew" は、完全なリポジトリのクローンを必要とする。