GitHubからHTTPSとSSHでクローンしてみる

VirtualBoxにCentOSをとりあえずインストール

GitHubにサンプルのリポジトリを作ってみる
の続き

GitHubではcloneするURLをHTTPSSSHで選べる。
 

HTTPSSSHのクローンを試してみる。
(今回はCentOSの環境で試してみる)

※Gitが入ってなければインストールしておく。

$ sudo yum -y install git

HTTPSの場合

HTTPSでクローンする。

$ git clone https://github.com/yk5656/sample.git sample_https

適当にファイルを編集してコミット。

$ cd sample_https/
$ vi README.md
$ git commit -a -m '適当に編集'

プッシュすると、エラーがでた。

$ git push
error: The requested URL returned error: 403 Forbidden while accessing https://github.com/yk5656/sample.git/info/refs

fatal: HTTP request failed

Gitのコンフィグを開いて、GitHubのアカウント名を設定する。

$ vi .git/config
・・・
url = https://アカウント名@github.com/yk5656/sample.git
・・・

再度プッシュすると、エラーはでなくなり、
パスワードを入力すると、プッシュされた。

$ git push
Password:

ただ、このままでは毎回パスワードを求められる。
とりあえず、下記のようにコンフィグにパスワードを設定すると、
パスワードは求められなくなる。

$ vi .git/config
・・・
url = https://アカウント名:パスワード@github.com/yk5656/sample.git
・・・

SSHの場合

クローンすると、エラーがでた。

$ git clone git@github.com:yk5656/sample.git sample_ssh
Initialized empty Git repository in /home/dev/sample_https/sample_ssh/.git/
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

鍵を作成し、

$ ssh-keygen
(Enter連打)

id_rsa.pubの内容を

$ cat ~/.ssh/id_rsa.pub

SSH Keysの設定画面で登録する。
https://github.com/settings/ssh


再度クローンすると、うまくいった。

$ git clone git@github.com:yk5656/sample.git sample_ssh

適当にファイルを編集してコミット。

$ cd sample_ssh/
$ vi README.md
$ git commit -a -m '適当に編集'

プッシュも問題なく、パスワードも入力せずにできた。

$ git push