こんにちは、株式会社キカガクで講師をしている蓮です。今回は GitHub を使いはじめて最初の git push でつまづいた方に対処法を紹介します。
2021 年 8 月 13 日まではパスワードを入力することで Git 操作をすることができました。しかし、その認証は廃止されてしまいました。
「よし、ローカル PC でアプリケーションやコードを実装した。GitHub で公開してみよう!」
最初の GitHub への git push コマンドで躓いてしまった方への記事です。
この記事では GitHub でリポジトリを作成するところから、コードを公開するまでの最短距離(SSH 版)を紹介します!
GitHub アカウント登録から、コードを公開するまで一緒に進めていきます。
GitHub アカウントを作成
STEP1 :まずは GitHub のアカウントを作成します。アカウント作成手順は以下のようなイメージで行います。

STEP2 :ユーザー名やメールアドレスなどの登録画面です。

STEP3 :登録完了前に確認コードを入力します。

登録完了すると以下のような画面に遷移します。

GitHub で新規リポジトリを作成
ここで作成する GitHub のリポジトリとは、作成したファイルやディレクトリの構成・状態を保存・記録しておく「場所」のようなイメージをしていただくといいかと思います。
あとから登録できるものは省略して、サクッとコードを公開する手順を進めます。
まずはコードを公開するために新しくリポジトリを作成します。
先程の画像の左側、「Create repository ボタン」から作成開始です。必要な情報を入力してリポジトリ作成できます。

リポジトリの作成が完了すると Quick setup が表示されます。
「SSH」を選択し、「… or crate a new repository on the command line」に表示されているコマンドを実行していきます。

手元の PC のターミナルで Git コマンドを使用、コードを公開
ここからは、ターミナルまたはコマンドプロンプトなどを使用して、コマンドを実行していきます。すでにアプリケーションなどを作成した状態を想定します。
私は、hello-world フォルダ の app.py を例にコードを公開します。
Quick setup から最小限必要なコマンドを使用します(一部変更あり)。
以下が実行したコマンドです。入力を求められた部分は yes を入力します。
$ git init $ git add . $ git commit -m "first commit" $ git branch -M main $ git remote add origin [email protected]: <ユーザー名(画面黒塗り)>/hello-world $ git push -u origin main
実際に私が操作したターミナルのキャプチャです。

Permission denied(publickey)が表示されています。
これは、GitHub のサーバーが公開鍵を要求しているのですが、ユーザーが認証に使用する公開鍵(publickey)を送信できなかったときに発生するエラーです。
この問題を解決する一つの手段として、「SSH 接続」するための手順を紹介します。
SSH キーを生成、コピー
ここからは、上記のエラーを解決するためにユーザー側で公開鍵(publickey)を生成します。
手元の PC でコマンドを利用して SSH キーを生成します。
以下の 2 つの方法を紹介していきます。
おすすめは最短で生成できる、「2」のコマンド実行です。
- 確認用コマンド付き SSH キー生成コマンド
- 最短 SSH キー生成コマンド
ここでは、SSH キーの作成・イメージを持っていただければ OK です!
$ cd ~/.ssh
$ ls
$
ssh-keygen -t rsa
$ ls
$ pbcopy < ~/.ssh/id_rsa.pub
cd ~/.ssh | SSH キーを生成するディレクトリへ移動 |
ls | SSH キーを生成するディレクトリのファイル一覧を表示 |
ssh-keygen -t rsa | SSH 接続のために必要な公開鍵・秘密鍵を生成 Enter → パスワードを設定→再度パスワード入力、の操作をする パスワードは今後、 git push コマンドを実行する際に使用するため、記憶できるものを設定すること |
ls | 生成された SSH キー(公開鍵:id_rsa.pub、秘密鍵:id_rsa)が生成されたことを確認 |
pbcopy < ~/.ssh/id_rsa.pub | id_rsa.pub の中身をクリップボードに全部コピー ※ マウスでテキストを範囲指定して、コピーをしたような状態 |
確認用コマンドを実行したときのキャプチャです。
「2」で紹介するコマンドを実行したときも同じような情報を確認することができます。

ターミナルのどのディレクトリの位置でも実行できます。
git push コマンドを実行したあとに、続けて実行しても問題ありません。
私は今回、紹介のために別々のターミナルで実行しています。
$ ssh-keygen -t rsa
$ pbcopy < ~/.ssh/id_rsa.pub
GitHub に生成した SSH キーを登録
今度は、GitHub のページで操作をしていきます。
画面右上の GitHub アイコンをクリックし、「Settings」から登録をします。

Settings をクリックすると以下のような画面に遷移します。
左の一覧から「SSH and GPG keys」をクリックし、「New SSH key ボタン」より登録します。

「New SSH key ボタン」をクリックすると、以下の画面に遷移します。
Title は自由に入力することができるので、今回は「202306」としました。
Key は ターミナルで生成した SSH キーを入力します。
pbcopy コマンドを使用したら Key の入力欄に直接 SSH キー(id_rsa.pub)を貼り付けできます。
Title と Key を入力したら、「Add SSH key ボタン」をクリックします。

登録が完了すると以下の画面が表示されます。登録した Title と SSH キー情報が表示されます。
これで、GitHub へ SSH キーの登録は完了です。
では次に、Git コマンドを再度実行して、コードを公開します。

GitHub に公開するためにコマンド実行
ターミナルへ移動し、さきほど実行失敗した git push コマンドを実行します。
比較しやすいように git push コマンドが失敗した続きから再度 git push コマンドを実行しました。
パスワードの入力が求められるので、SSH キーを生成するときに設定したパスワードを入力し、Enter を押下します。
入力した文字は表示されませんが、しっかり入力できています。

done. と返ってきたので、公開されているかを確認するために GitHub へ移動します。
GitHub でローカルのコードが公開されていることを確認
GitHub のページより、Repositories タブをクリックするとリポジトリが表示されていることを確認できます。リポジトリをクリックして、コードが公開されているかを確認します。

ローカルで作成した hello-worlld フォルダの中身一覧が表示されていることを確認することができます。
これでローカルで作成したアプリケーションやコードを GitHub で公開することができました!

さいごに
SSH キーの登録は 1 度でいいので、このあとはスムーズに公開できるようになります。GitHub をしっかり理解するためには、かなり学習時間がかかります。
理解して GitHub を使用できるようになるのが理想です。
しかし、いつまでも利用できないままだとせっかく作成したアプリケーションやコードを公開することができません。
まずは公開できるようになりましょう!
GitHub を使用していくと壁に当たることがあると思いますが、そのときに解決していきましょう。
—————————————————————————————-
以下のように GitHub でアクティブな日付に緑のマークがつきます。ここからどれだけアプトプットしているかを見れますので、アピールもできるかもしれませんね!

おまけ(余談)
今回どのようなコードを公開したのかを紹介します。
まずは、 app.py の中身を GitHub で確認します。

「hello world」を表示するコードでした。Python を初めて勉強した方は、通ってきた道ではないでしょうか?
ローカルで動作確認をしてみました。

しっかり「hello world」が表示されました。ここまで読んでくださってありがとうございます!
最速で学びたい方:キカガクの長期コースがおすすめ

続々と転職・キャリアアップに成功中!受講生ファーストのサポートが人気のポイントです!
AI・機械学習・データサイエンスといえばキカガク!
非常に需要が高まっている最先端スキルを「今のうちに」習得しませんか?
無料説明会を週 2 開催しています。毎月受講生の定員がございますので確認はお早めに!
- 国も企業も育成に力を入れている先端 IT 人材とは
- キカガクの研修実績
- 長期コースでの学び方、できるようになること
- 料金・給付金について
- 質疑応答
まずは無料で学びたい方: Python&機械学習入門コースがおすすめ

AI・機械学習を学び始めるならまずはここから!経産省の Web サイトでも紹介されているわかりやすいと評判の Python&機械学習入門コースが無料で受けられます!
さらにステップアップした脱ブラックボックスコースや、IT パスポートをはじめとした資格取得を目指すコースもなんと無料です!