GitHubの登録手順。SSH設定&リポジトリをclone, pushまで解説
2018/05/07
こんにちは、okutani(@okutani_t)です。最近はコーディング時にGitを使うのがマストになってきました。仕事ではなおさら、Gitが無いと開発ができないぐらいに便利なツールです。
今まではGitだけ使っていたのですが、Web上にリポジトリを公開できる『GitHub』にも興味が出てきて、試しに無料のアカウントで利用してみました。
本記事は登録手順をまとめたものです。登録後に初期設定、最低限cloneとpushができる環境を整えてみました。
SSHの設定などが少しややこしかったので、忘れないように備忘録として残しておきます。
なお、ローカルのGit環境はほぼ必須なので、次の記事を参考に構築しておきましょう。
参考Git for Windows導入方法&初期設定まとめ | vdeep
参考MacにHomebrewを使ってGitを導入&初期設定 | vdeep
では、さっそくGitHubの登録方法と初期設定の流れをみていきましょう。
スポンサーリンク
もくじ
GitHubの登録手順
まずはGitHubの公式サイトへ移動します。
LINKGitHub · Where software is built
「Sign up」を選択して、新しくアカウントを作成していきましょう。
『ユーザー名』『メールアドレス』『パスワード』を入力して「Create an account」を選択。
なお、ユーザー名はそのまま「https://github.com/ユーザー名」の形で公開用URLとして利用されるので、それを考慮して作成しておくと良いです。
次の画面でプランが選択できます。今回は無料プラン(Free)のまま先に進みました。
企業アカウントについてのHelpを一読したい人は「Help me set up an organization next」にチェックして進みましょう。今回は個人アカウントなのでチェックせず、「Finish sign up」をクリック。
これでGitHubへの登録が完了しました。登録が完了するとTOPページへ移動します。
メール認証をおこなう
登録したメールアドレス宛にGitHubからメールが届きます。次のようなメールが届くので、「Verify email address」をクリックしておきましょう。
これをしないとGitHubの利用ができないので注意してください。
次はSSHで接続できるように設定を進めていきましょう。
SSH用の公開鍵・秘密鍵の生成
GitHubではSSHが利用できます。SSHでは公開鍵と秘密鍵を利用して、よりセキュアな通信をおこなうことができます。
公開鍵と秘密鍵を作成し、「GitHub側に公開鍵」「PC(ローカル)側に秘密鍵」をそれぞれ配置して利用していきます。
ターミナル(もしくはコマンドプロンプト)を使って、下記のコマンドから鍵を生成します。ホームディレクトリに『.ssh』ディレクトリが無い場合は作成し、そこに配置するようにしましょう。
$ mkdir ~/.ssh
$ cd ~/.ssh
$ ssh-keygen -t rsa -C "登録したメールアドレス"
また、以前にssh-keygenで鍵を作成したことのある方は、そのままそちらを使ってもOKです。
ssh-keygenコマンドを入力したら『Enter』『パスワードを2回』入力します。パスワードはGitHubのパスワードと一致する必要はないので、お好きなパスワードを入力してください。
これで.sshディレクトリに『id_rsa(秘密鍵)』『id_rsa.pub(公開鍵)』が生成されます。
次のコマンドを実行しておけば、SSH接続の際にパスワード入力を省略できて便利です。
$ ssh-add -K ~/.ssh/id_rsa
なお、ssh-addコマンドは、Mac以外のOSでそれぞれ設定方法が違うため、「OS名 ssh-agent」などで適宜ぐぐって設定してみてください。
下記のコマンドでssh-addコマンドがきちんと行われているか確認できます。
$ ssh-add -l
次に、公開鍵の内容をクリップボードにコピーしておきます。次のコマンドで内容をコピーできます。
// Macの場合
$ pbcopy < ~/.ssh/id_rsa.pub
// Windowsの場合
$ clip < ~/.ssh/id_rsa.pub
この公開鍵の情報をGitHubに登録していきましょう。
公開鍵をGitHubに登録
GitHubにログインし、右上のプロフィールアイコンから『Settings』を選択。
左メニューの『SSH keys』を選択、『Add SSH key』をクリック。
『Title』に「どの端末か分かるような名前」でタイトルをつけておきましょう。
『Key』に先ほどコピーしたid_rsa.pubの内容を丸々貼り付けます。
「Add key」をクリックして保存。
次のコマンドをターミナルで入力して、無事に公開鍵が設定できたか確認してみましょう。
$ ssh -T git@github.com
また、下記のコマンドでも接続確認できます。
$ ssh -l git -i ~/.ssh/github_id_rsa github.com
接続が確認できたので、GitHub上でプロジェクトのリポジトリを管理してみましょう。
プロジェクトをGitHubのリポジトリに追加するには、次の2通りの方法があります。
- GitHubからリポジトリをclone
- ローカルのGitリポジトリをGitHubにpush
いずれにしても、まずはGitHub上にリポジトリを生成しておく必要がありますので、実際にリポジトリを作成していきましょう。
GitHubにリポジトリを生成する
新しいリポジトリを作成します。上部メニューから『New repository』を選択。
リポジトリの名前を入力、『Create repository』をクリック。
これでGitHubに新しいリポジトリが生成されました。
GitHubからリポジトリをcloneする
作成したリポジトリをcloneする方法をみていきましょう。
リポジトリがある画面を表示すると、次のように「HTTPSもしくはSSHのURL」が表示されています。これをコピーして利用します。
先ほど、SSHの接続確認をおこなっているので、今回は『SSH』を選択。
ターミナルから次のコマンドでリポジトリをcloneします。
$ git clone URL
今回の例の場合は、
$ git clone git@github.com:okutani-t/test.git
となりますね。
これで、通常通りの開発手順でadd, commitをおこない、次のコマンドでpushしましょう。
$ git push origin master
cloneから利用する場合の手順は以上です。
おまけ: cloneの際にエラーが出る場合
下記のようなエラーが出る場合、
$ git clone git@github.com:okutani-t/test.git
Warning: Permanently added the RSA host key for IP address '192.30.252.128' to the list of known hosts.
「~/.ssh/config」に次の記述をおこなえばOKです。
Host github
HostName github.com
IdentityFile ~/.ssh/id_rsa
User git
参考にしてください。
ローカルのGitリポジトリをGitHubにpush
ローカルにGitリポジトリがすでにある場合は、下記の手順でリモートリポジトリとひも付けできます。
まずはgit remote addでリモート先のリポジトリを追加しましょう。先ほどcloneでおこなった「HTTPSもしくはSSHのURL」を入力しましょう。
$ git remote add origin URL
今回の場合は、
$ git remote add origin git@github.com:okutani-t/test.git
となります。
次にpushをおこなえばOKです。
$ git push -u origin master
ここで「-u」のオプションが出てきましたが、-u付きでpushすると次回から『$ git push』だけでGitHubにpushできるようになります。しかし、ヒューマンエラーなどを考慮して、
$ git push origin master
で毎回pushすることをオススメします。今後、リモート先を増やす予定が無い場合は、-uで省略してpushしてもいいですね。
pullの場合も次のようにおこないましょう。
$ git pull origin master
補足ですが、もし、SSHを使わずにHTTPS(SSL)で通信する場合は、次のとおりです。
$ git remote add origin https://github.com/okutani-t/test.git
$ git push origin master
HTTPSでpushする場合は、次のようにGitHubのユーザー名とパスワードを聞かれます。
外出先でpushしたい場合は、HTTPSを利用すれば設定いらずでお手軽ですね。
その場合、ローカル側のユーザー名とメールアドレスがGitHubアカウントと一致していなければ、別ユーザーのpushとみなされてしまうので注意しましょう。
まとめ
GitHubの登録方法、SSH設定、cloneとpushの方法について解説しました。
最初はローカルのGitとリモートのGitHubでごちゃごちゃしてしまいますが、使っているうちに慣れてくるかと思いますので、本記事を参考にして必要最低限の使い方はマスターするようにしましょう。
また、本記事で行った作業はこちらの書籍を参考にしています。GitとGitHubをきちんと理解したい人におすすめの書籍です。
参考になれば幸いです。
Web開発のお仕事を募集しています
フリーランスのエンジニアとして、Webシステム開発のお仕事依頼を随時募集しています(現在の業務量によってお受けできない場合もあります)。
「Ruby on Rails」「JavaScript(jQuery, Reactなど)」「HTML + CSS」を用いたシステム開発、「Heroku」等を用いたサーバー構築・運用、「Git」や「GitHub」を利用したソーシャルコーディングなどに対応しています。
ご依頼を検討している方は、下記リンク本ブログからのお問い合わせ、もしくはokutaniのポートフォリオからご連絡ください。
LINKお問い合わせ
スポンサーリンク