0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

GitHubの2段階認証ではpersonal access tokenというものが必要らしい

Posted at

記念すべき初投稿です。
僕は今、Swiftの勉強をしており、やっと1つのアプリを作ることができました。まぁただの四則計算しかできない電卓アプリですけど...。それでさっさとGitHubとやらにファイルをアップロードして、次のアプリ制作に取り掛かろうと思ったのですが、結果的にファイルをアップロードするまでに4時間、沼にハマってました。マジで腹立つ。
今、プログラミングを勉強している初心者エンジニアの方達には、こんなしょうもないことで時間を食って欲しくないので、共有したいと思います。もし間違っていることを書いていたら、びしばしとご指摘ください。

沼にハマるまでの道筋

僕は、GitHubにファイルをアップロードするやり方がわからなかったので、初心者用:GitHubにファイルをアップロードする方法(超基本)を見て、手順通りにやってみたのですが、最後の

git push -u origin master

を実行したら、

Username for 'https://github.com': hoge-user
Password for 'https://hoge-user@github.com':

というのが出てきたので、「こんなのあるなんて聞いてないぞ」とか思いながら、GitHubのユーザー名とパスワードを入力して実行。

remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/hoge-user/repository-name.git/'

というのが出てきて、まだ僕は初心者なのでこの2行は成功の合図だと思い、意外と簡単だなとか甘いこと考えてたら、まぁ〜何回リロードしてもアップロードされない。

原因

原因を調べたら、これは2段階認証というものだとわかりました。さらに、

Username for 'https://github.com': hoge-user
Password for 'https://hoge-user@github.com':

ここでの2行目のパスワードはGitHubに登録した時のパスワードではなく、personal access tokenという別のパスワードが必要なんだそうです。そんなんわかるか!
1行目のユーザー名は普通にGitHubのユーザー名を入れます。

personal access token入手方法

特に難しいことはなく、personal access tokenの作成方法の通りにやっていけば、問題ありません。
8の項目なのですが、なんかチェックをつけたり、外したりしてて、あまり意味がわからなかったので、僕は1番上の repo というものだけにしかチェックをしなかったのですが、問題なくアップロードできたので大丈夫だと思います。
この8の項目でなにをしているのかわかる方いらっしゃいましたら、ご教授いただけるとありがたいです!
あとは、personal access tokenをコピーして、2行目のパスワードのところに貼り付けて実行するだけです。そうすると、なんだかさっきのより成功の合図感がありますよね?

余談

こんな自慢げに記事を書いてますが、この情報に行き着くまでに先ほども書いたように、4時間もかかりました。まず僕は、自分が打っているパスワードが間違っているのではないかと、何回も試し、それで1時間。次はまた同じように、git initからやり直していたら、最初に実行した時とターミナルの処理結果がなんか違うと気づいたので調べてみたら、リポジトリの履歴の初期化を行うと良いらしく、Gitでリポジトリの履歴を初期化する方法を紹介!という記事に出会い、さらに1時間。しかし、これでもうまくいかなく、また調べてみたら、ターミナルでVimというものをいじれば、2段階認証をしなくて済むという記事(githubを二段階認証に変更後に起こるエラーの対処方法)を見て、ここで初めて2段階認証を知り、また1時間。やっとここで解決の兆しが見えたところで、Vimってなんか普通に文字が打てないみたいで、わからなくなって強制終了したらスワップ?みたいなよくわからないのですが、ターミナルによるエラーいじめに遭い、それを克服し、Githubの2段階認証入れたらpushできなくなった人へに出会い、解決しました。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?