GitHubからHTTPSとSSHでクローンしてみる
VirtualBoxにCentOSをとりあえずインストール
と
GitHubにサンプルのリポジトリを作ってみる
の続き
GitHubではcloneするURLをHTTPSとSSHで選べる。
HTTPSとSSHのクローンを試してみる。
(今回は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