youtubeのこの動画を見ながらshopifyのサンプルアプリを開発してみようとして、shopify CLIをインストールする場面があった。
インストール方法の記載があるドキュメントはこちら
で、まず brew tap shopify/shopify
でCLIをインストールしょうとしたら以下のエラー
$ brew tap shopify/shopify
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
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!
Google翻訳にぶちこむと以下の意味である。
エラー: homebrew-coreは浅いクローンです。 homebrew-caskは浅いクローンです。
google翻訳brew update
を実行するには、最初に次のコマンドを実行します。 git -C / usr / local / Homebrew / Library / Taps / homebrew / homebrew-core fetch –unshallow git -C / usr / local / Homebrew / Library / Taps / homebrew / homebrew-cask fetch –unshallow 浅い更新のため、この制限はGitHubのリクエストで行われました。 クローンは、ツリーのレイアウトとトラフィックのために非常にコストのかかる操作です。 Homebrew / homebrew-coreおよびHomebrew / homebrew-cask。私たちはあなたのためにこれをしません で高価な浅くない操作を繰り返し実行することを避けるために自動的に CIシステム(代わりに、浅いクローンを使用しないように修正する必要があります)。すみません 不便!
どうやらhomebrewがGithubからトラフィックコストが高いから浅いクローンの方式??を辞めてくれと言われてみたいで、注意を出している模様。
素直に以下のコマンドを叩きます。git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow
homebrew-coreとhomebrew-caskの両方必要みたいです。
時間はお互いに結構かかります。(2つで10分くらい??)
詳しい内容はhomebrew-core is a shallow clone.
でググるといっぱい解説が出てきます。笑
2020年12月くらいから出てきているみたいなので、やっていない人はアップデートして下さいね。
$ git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow remote: Enumerating objects: 657800, done. remote: Counting objects: 100% (657756/657756), done. remote: Compressing objects: 100% (223296/223296), done. remote: Total 648108 (delta 428421), reused 641498 (delta 421956), pack-reused 0 Receiving objects: 100% (648108/648108), 256.98 MiB | 6.55 MiB/s, done. Resolving deltas: 100% (428421/428421), completed with 8445 local objects. From https://github.com/Homebrew/homebrew-core 47333eded6..920d0b3e8d master -> origin/master $ git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow remote: Enumerating objects: 409534, done. remote: Counting objects: 100% (409511/409511), done. remote: Compressing objects: 100% (119105/119105), done. remote: Total 402852 (delta 288054), reused 397965 (delta 283184), pack-reused 0 Receiving objects: 100% (402852/402852), 179.99 MiB | 7.98 MiB/s, done. Resolving deltas: 100% (288054/288054), completed with 4123 local objects. From https://github.com/Homebrew/homebrew-cask 290891135c..428eca25fa master -> origin/master
これでhomebrewの問題は解決したので、改めてインストール!
$ brew tap shopify/shopify
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 3 taps (shopify/shopify, homebrew/core and homebrew/cask).
~~~~~~~~~~~~(略)~~~~~~~~~~~~~~~~~~~~
$ brew install shopify-cli
==> Installing shopify-cli from shopify/shopify
==> Downloading https://rubygems.org/downloads/shopify-cli-1.5.0.gem
######################################################################## 100.0%
==> tar -xf /Users/xxxxxxx/Library/Caches/Homebrew/downloads/89acddc579f58104c7395a6946c7fc5778988a37ac79578699eadeb934cd9d78--shopify-cli-1.5.0.gem --directory /pri
==> tar -xzf /private/tmp/shopify-cli-20210211-87869-o264hh/data.tar.gz --directory /private/tmp/shopify-cli-20210211-87869-o264hh/src
🍺 /usr/local/Cellar/shopify-cli/1.5.0: 324 files, 725.6KB, built in 5 seconds
==> brew cleanup
has not been run in 30 days, running now...
Removing: /Users/xxxxxxx/Library/Logs/Homebrew/pcre2... (64B)
Removing: /Users/xxxxxxx/Library/Logs/Homebrew/git... (64B)
無事にインストールできました。
最後にhelpが出てくれば、問題なくインストール完了です。
$ shopify -h Use shopify help <command> to display detailed information about a specific command. Available core commands: connect: Connect (or re-connect) an existing project to a Shopify partner organization and/or a store. Creates or updates the .env file, and creates the .shopify-cli.yml file. Usage: shopify connect create: Create a new project. Usage: shopify create [ node | rails ] logout: Log out of a currently authenticated partner organization and store, or clear invalid credentials Usage: shopify logout version: Prints version number. Usage: shopify version
別記事でアプリの作成過程も書けたら書きます。
以上です。