brew install gh
M2 MacのHomebrewでインストールしようとしたときに、下記のエラーが表示される。
Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)! To rerun under ARM use: arch -arm64 brew install ... To install under x86_64, install Homebrew into /usr/local.
翻訳すると下記になる。
エラー:ARMデフォルトプレフィックスが「/opt/homebrew」のものはRosetta 2を使っている状態ではインストールできません ARMで再実行する方法: 「arch -arm64 brew install …」 x86_64でインストールしたいならHomebrewを「/usr/local」にインストールしてください。
Apple Silicon(ARM)に対応したARM版Homebrewと、Intel(x86_64)に対応したIntel版Homebrewがあり、Rosetta 2を使っている状態だとARM版Homebrewでエラーが出るらしい。
Node.jsの古いバージョンをインストールするために、いろいろ試した過程でターミナルをRosetta 2で起動したことがあったのでそれが原因とのこと。
下記手順で確認する。
Rosetta 2でターミナルを起動していないか確認
Finderで「ターミナル.app」を選択して右クリックして「情報を見る」で情報パネルを表示。
情報パネルが表示されるので「Rosettaを使用して開く」にチェックが入っていないか確認し、チェックをしてあったらチェックを外す。
で、再度
brew install gh
無事インストール完了
次にGitHub CLIへのログインする
gh auth login
上記を実行するとインタラクティブに質問がされ、いくつか答えるだけでログインが完了。
最初にGitHubエンタープライズかどうかを選択します。通常はGitHub.comを選択すればよい。
? What account do you want to log into? [Use arrows to move, type to filter] > GitHub.com GitHub Enterprise Server
次にGitに使うプロトコルを選択します。わからなければHTTPSを使えばよい。
? What is your preferred protocol for Git operations? [Use arrows to move, type to filter] > HTTPS SSH
GitHubの認証情報でGitを認証しますか?と聞いてくるのでYを選択。
? Authenticate Git with your GitHub credentials? (Y/n)
次にどのように認証しますか? [矢印を使用して移動し、入力してフィルタリングします]
Webブラウザでログインしますか?それとも認証トークンを貼り付けますか?と聞いてくるので、今回はwebで認証する。
? How would you like to authenticate GitHub CLI? [Use arrows to move, type to filter] > Login with a web browser Paste an authentication token
コマンドライン上に認証コードが表示されるので、Enterキーを押してブラウザを起動。
そのブラウザに先程の認証コードを入力する。
! First copy your one-time code: AD1E-612F Press Enter to open github.com in your browser...
ブラウザに出てきた画面にコードを入力すると。
が出てくるので、右下の緑のボタンをクリック。
すると
パスワードを求められるので、入力すればOK。
で、レポジトリをクローンしたいディレクトリに行って、
gh repo clone [レポジトリ名]
をコマンドするとクローンされる。