web-dev-qa-db-ja.com

二要素認証を使用したhttps経由のGitHubからのGit Clone

最近、GitHubで2要素認証の使用を開始しましたが、プライベートリポジトリで通常の方法でhttps経由でgitを使用できなくなりました。

peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo
Cloning into 'MyPrivateRepo'...
Username for 'https://github.com': [...]
Password for 'https://[...]@github.com': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/[...]/MyPrivateRepo/'

二要素認証を無効にした場合、以前と同様に使用できます。

peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo
Cloning into 'MyPrivateRepo'...
Username for 'https://github.com': [...]
Password for 'https://[...]@github.com': 
remote: Counting objects: 147, done.
remote: Total 147 (delta 0), reused 0 (delta 0), pack-reused 147
Receiving objects: 100% (147/147), 22.70 KiB | 0 bytes/s, done.
Resolving deltas: 100% (87/87), done.
Checking connectivity... done.

SSHを使用でき、すべてが機能することは知っていますが、たとえばリクエストで認証トークンを送信することにより、HTTPS経由でGitHubを使用しながら、2要素認証を維持する方法はありますか?

82
peter-b

これを修正する方法については、こちらをご覧ください。

https://github.com/blog/1614-two-factor-authentication#how-does-it-work-for-command-line-git

コマンドラインGitではどのように機能しますか?

Git認証にSSHを使用している場合は、簡単です。何もする必要はありません。 HTTPS Gitを使用している場合、パスワードを入力する代わりに、個人用アクセストークンを入力します。これらは パーソナルアクセストークンページ に移動して作成できます。

89
Nitsew

@ Nitsew's 回答に従って、 パーソナルアクセストークン を作成し、トークンをユーザー名として使用し、空のパスワードで入力します。

後で、すべてのプライベートリポジトリにアクセスするための認証情報は必要ありません。

14
Sunil Targe