「git push ssh:〜」で「Permission denied (publickey).」とかなっちゃう件のメモ
失敗例
サーバ側(AWS Amazon Linux)
sudo mkdir /var/lib/git sudo chown -R ec2-user /var/lib/git cd /var/lib/git mkdir demo.git git init --bare demo.git
クライアント側
適当に何か作ってcommit
cd ~/projects/demo
echo 'hoge' > hoge.txt
git commit -m "first commit"
git init
git push ssh://ec2-xxx-xx-XX-xx.ap-northeast-1.compute.amazonaws.com/var/lib/git/demo.git master
Permission denied (publickey).
fatal: The remote end hung up unexpectedly失敗となる
「Permission denied (publickey).」つうことなんで
クライアント側で
hogehost に秘密鍵を設定
秘密鍵が demo.pem の例
- ~/.ssh/config
Host hogehost
HostName ec2-xxx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com
IdentityFile ~/.ssh/demo.pem
User ec2-user
git push
git push ssh://hogehost/var/lib/git/demo.git master
Counting objects: 20, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (18/18), done.
Writing objects: 100% (20/20), 9.45 KiB, done.
Total 20 (delta 0), reused 0 (delta 0)
To ssh://aar14b/var/lib/git/demo.git
* [new branch] master -> masterエラーでなくなった
git remote add origin ssh://hogehost/var/lib/git/demo.git
git push origin
Everything up-to-dateでけた(・∀・)