複数PCでGitHubを利用したい
複数のPCでGitHubを利用しようとしたら、ユーザー名とパスワードを求められたので入力。
正しく入力したつもりなのだが・・・なぜか認証エラーになる。
認証エラー
どうも、二段階認証が有効になってから、この症状が出ているらしい。
$ git clone https://github.com/private-organization/repository.git Cloning into 'repository'... Username for 'https://github.com': kamuy Password for 'https://kamuy@github.com': <- 入力しても何も表示されない remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/private-organization/repository.git/'
こんな感じ。
token作成
Personal access tokens 設定を実施
画面遷移が少しわかりにくかった・・・
tokensの作成
ここからもひたすらマウスクリック
- 「Generate new token (classic)」をクリック
- 「Note」欄に何かしら説明を入力(token generate)
- 「Expiration」で有効期限を選択 *1 ← classicでないと出てこない
- 「Select scopes」にあるgistまで上から全てチェックを入れる
- 「Generate token」をクリック(画面が切り替わる)
token画面が表示される⇐一回しか表示されないから閉じないで!!
ここで閉じてしまって、もう一度最初からやり直すハメになって辛かった・・・
なので、この画面はtokenを控えるまで閉じてはダメなのです。
画面中央付近に「ghp_xxxxxxxxx」というtokenが作成されているはず。
このtokenを必ずコピーして控えておく!
gitでcloneする
これもハマった。
tokenが複雑で手入力は不可能と思ったほうが良いです。
なぜなら・・・入力画面に何も表示されないから!
ターミナルでコマンド実行 〜 ユーザー名入力まで
$ git clone https://github.com/kamuycikapsample/kmy_samp.git Cloning into 'repository'... Username for 'https://github.com': kamuy <-- ユーザー名はターミナルに表示される Password for 'https://kamuy@github.com':
パスワードにtokenを入力
ユーザー名入力の後、Passwordに作成したtokenを入力するのですが・・・これが結構めんどくさい。
パスワード入力は、ターミナル画面に表示されないので、正しく入力できているか否かが判断できず。
なので。。。
- コピーして控えたtokenをクリップボードにコピー
- Password入力のターミナル上で貼り付け(ターミナルによっては右クリックで貼り付け)
- 正しく貼り付けられていると信じてEnterキーを叩く
の手順でうまくいく確率を挙げられます。
$ git clone https://github.com/kamuycikapsample/kmy_samp.git Cloning into 'repository'... Username for 'https://github.com': kamuy Password for 'https://kamuy@github.com': <--- 何も表示されないけれど・・・ remote: Enumerating objects: 65, done. remote: Counting objects: 100% (65/65), done. remote: Compressing objects: 100% (38/38), done. remote: Total 65 (delta 26), reused 57 (delta 21), pack-reused 0 Unpacking objects: 100% (65/65), done. <--- 貼り付けうまく行ったら成功する!
行けました!
tokenはあえて複雑な入力文字になっているので、コピーとかダメじゃんとか思いますが・・・思いの外手入力は至難の技です。
*1:「No Expiration」で有効期限無しかな?