バナー画像

GitHubのログインについてまとめています。

GitHubのログイン時にパスワード入力を省略する方法

https接続でGitHubのパスワード入力を省略

gitコマンドで、プライベートリポジトリに対して操作しようとするとgithub.comへのログイン・パスワードを毎回要求されます。(パブリックリポジトリの場合は聞かれません)

以下は、linux(ubuntu)にて、git cloneでhttpsを使ってプライベートリポジトリをcloneする例です。

$ git clone https://github.com/<xxxxx>/test.git
Cloning into 'test'...
Username for 'https://github.com': username ← ユーザ名入力
Password for 'https://kabukinger@github.com': ← パスワード入力(表示されない)
remote: Enumerating objects: 102, done.
remote: Counting objects: 100% (102/102), done.
remote: Compressing objects: 100% (67/67), done.
remote: Total 102 (delta 10), reused 96 (delta 9), pack-reused 0
Receiving objects: 100% (102/102), 79.51 KiB | 3.18 MiB/s, done.
Resolving deltas: 100% (10/10), done.

関連)About remote repositories – GitHub Docs

以下のコマンドで、github.comへのパスワードを記憶させることができ、都度パスワード入力しなくて済むようになります。

git config credential.helper store

参考)git パスワードを毎回聞かれる問題をHTTPSでも解決 – Qiita

ただし、IDとパスワードをローカル環境内に保存することになります。gnome-keyringなどを導入することで認証情報を暗号化して保管することが可能です。

参考)Gnome Keyringの使い方 – Qiita

GitHubによると、パスワード認証でのGit操作を禁止する方向だそうで、2021年8月13日以降は、パスワード認証での操作ができなくなります。代わりに個人アクセストークンベースでの認証に切り替える必要があります。

個人アクセストークンは、GitHubのSettings→Developer settings→Personal Acces tokenから生成が可能。トークンには、実行できる機能の権限設定が可能です。

参考)個人アクセストークンを使用する – GitHub Docs

なお、個人アクセストークンは、gitコマンドでパスワード要求されたときにパスワードとして入力します。

$ git clone https://github.com/username/repo.git
Username: your_username
Password: your_token(トークンを入力する)

トークンはパスワード扱いなので、生成画面から移動すると再度表示することができなくなります。生成画面からメモ帳などにコピー&ペーストしておきましょう。

SSH接続でGitHubへのパスワード入力を省略

また、SSH方式でGitHubに接続するようにすれば、公開鍵・秘密鍵方式での認証となりパスワード認証禁止の影響を受けません。プライベートリポジトリへのgit操作が可能になります。

$ git clone git@github.com:kabukinger/samplex.git
Cloning into 'samplex'...
remote: Enumerating objects: 25, done.
remote: Counting objects: 100% (25/25), done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 25 (delta 1), reused 3 (delta 0), pack-reused 0
Receiving objects: 100% (25/25), 4.59 KiB | 783.00 KiB/s, done.
Resolving deltas: 100% (1/1), done.

公開鍵・秘密鍵の生成方法とGitHubへの公開鍵の登録方法は、以下を参照してください。

【関連記事】
GitHubにSSH接続する方法 秘密鍵・公開鍵生成と鍵の登録

GitHubにログインができなくなった理由

GitHubへのログインのセキュリティを高めるため、2要素認証を設定することが可能です。スマホのSMSメッセージやTOTPモバイルアプリを使って、2要素認証が可能なんですね。GitHubのSettings→Account security→Two-factor authenticationから設定が可能です。

関連)2 要素認証を設定する – GitHub Docs

2要素認証の設定時に、アクセスができなくなったときのための「リカバリコード」が発行されるので大事に保管しておきましょう。GitHubの公式ドキュメントには、以下のような警告があります。

警告: 2 要素認証の認証情報をなくしたり、アカウントのリカバリ方法が利用できなくなったりした場合、セキュリティ上の配慮から、GitHub サポートでは 2 要素認証が有効になっているアカウントへのアクセスはリストアできないことがあります。
引用:2 要素認証クレデンシャルをなくした際のアカウントの回復 – GitHub Docs

リカバリコードを紛失したときに、sshコマンドで取得できるトークンを送ればアクセスが回復できたという情報がありました。ただし、3年前の情報のため、現在でも可能かどうかは不明です。

関連)2段階認証の設定がうまくいかずにGithubにログインできなくなった時の対処法 – Qiita

GitHubへの初回ログイン時に、Windowsに間違ったパスワードが登録されてしまった

GitHubに限らず、パスワードが必要なサイトのログイン時に、初回の入力を間違えると誤った資格情報が登録されてしまうというケースがあります。

参考)githubで初回push時にパスワード間違えて詰んだ話 – Qiita

対策方法は、誤って登録されたWindows資格情報を削除すること。Windowsの検索窓に「資格情報マネージャ」と入力すると、Windows資格情報がページが開けます。

GitHubのログイン まとめ

ポテパンダの一言メモ
  • GitHubへはgit操作の内容や対象がプライベートリポジトリだとパスワードを要求されることがある
  • パスワード入力を省略するには、個人アクセストークンやSSHでの接続でgit操作をおこなう
  • 2要素認証はセキュリティが向上するが、リカバリコードを紛失するとアカウントが復活できない可能性あり

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。