Gitの勉強を兼ねて、Githubに公開しGithub pagesを作るまで。
Github
GithubにはhhtpとSSHで接続する方法がありますが、
今回はSSHで接続しようと思います。
SSHでの接続設定
まず、公開鍵と秘密鍵を作る。
パスフレーズは忘れないように。
$ ssh-keygen -t rsa -C "[e-mail]"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/user/.ssh/id_rsa): [左に出ているパスで良ければEnter]
Enter passphrase (empty for no passphrase):[パスフレーズ入力]
Enter same passphrase again:[もう一度]
以下のメッセージが出れば成功。
Your identification has been saved in /c/Users/user/.ssh/id_rsa.
Your public key has been saved in /c/Users/user/.ssh/id_rsa.pub.
The key fingerprint is:
51:5c:d8:ec:94:17:b5:d6:64:60:ba:28:21:62:10:79 [e-mail]
もし、以下のエラーが出たら
open /c/Users/user/.ssh/id_rsa failed: No such file or directory.
Saving the key failed: /c/.ssh/id_rsa.
.sshのフォルダを作れば良い。
フォルダを作りたいところにcd
で移動してから。
$ mkdir .ssh
鍵が生成できたら、
sshのkeyにさっき作った鍵を追加する。
$ eval "(ssh-agent -s)"
Agent pid xxxxx
$ ssh-add ~/.ssh/id_rsa
Enter passphrase for /c/Users/user/.ssh/id_rsa:[生成時に入力したパスフレーズ]
Identity added: /c/Users/user/.ssh/id_rsa (/c/Users/user/.ssh/id_rsa)
これで秘密鍵と公開鍵が生成できたので、Githubへ。
…の前に、これでクリップボードにコピーしておく。(あとで貼り付けるので)
※別にファイル開いてCtrl + A, Ctrl + C, Ctrl + VでもOKです。好みです。
$ clip < ~/.ssh/id_rsa.pub
Macでクリップボードにコピーする場合。
$ cat ~/.ssh/id_rsa.pub|pbcopy
SettingsのSSH Keysのページ。
Titleは何でも良いです。
Keyに先ほどクリップボードにコピーしたものをペースト。
Add Key押すと、パスワード聞かれるのでパスワード入力。(聞かれないこともあります)
ちなみに、Githubのパスワードなので注意。
秘密鍵と公開鍵を作るときに入れたパスフレーズとは別物です。
ここまで来たらあと一息。
githubに接続できるか確認!
ユーザー名が表示され、Settingsのページでも、緑色に光れば接続成功!!
$ ssh -T git@github.com
Hi UserName! You've successfully authenticated, but Github does not provide shell access.
Githubにリポジトリを作る
右上の + の New repository から。
Initialize this repository with a READMEはチェックなしでも。
入れるとREADMEが作られます。
Create repositoryをすると、親切にこのコマンドたたけというのが出ます。
コマンドでGithubにpush
ローカルで作ったコードをpushするので、cd
でコードのある場所に移動しておきます。
まずpushをする前にすること。
- リポジトリ初期化
- コミットしたいファイルをインデックスに登録
- コミット
$ git init
$ git add .
$ git commit -m 'initial commit'
リモートリポジトリを指定する。
$ git remote add origin git@github.com:UserName/sapmle.git
リモートリポジトリで名前の一覧が見れる。
-vをつけると詳細が見れる。
$ git remote
orijin
$ git remote -v
origin git@github.com:UserName/sample.git (fetch)
origin git@github.com:UserName/sample.git (push)
ここまで来たら、あとはpushするだけ。
-uをつけると次からリポジトリを省略してpush, fetch, pullができるらしい。
$ git push -u origin master
これで、無事Githubにpushされました。
Github pagesの作成
公開したコードをそのまま公開したい時とかってありますよね。
$ git push origin master:gh-pages
これをするだけで、gh-pagesというブランチがリモート側に作られます。
http://[username].github.io/[ProjectName]/
10数分経てば、上のURLで見れるようになります。
usernameが大文字の人は、全部小文字になります。