簡體   English   中英

git ssh推送到服務器,公鑰錯誤

[英]git push with ssh to server , public key error

我有ubuntu 12.04的ec2服務器,我向服務器添加了一個用戶“ git”。 生成ssh密鑰並上載到兩個用戶的.ssh目錄。 所以現在我可以訪問我的服務器了

ssh ubuntu@example.com
ssh git@example.com

我已經在/opt/git/gitpg.git創建了一個裸倉庫,並將其作為遠程添加到我的本地倉庫中

sudo git remote add deploy ubuntu@example.com:/opt/git/gitpg.git

當我嘗試推送到此存儲庫時,它顯示身份驗證錯誤。

sudo git push deploy master
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

我也嘗試過此解決方案 ,但它也不起作用。

任何人都可以提出可能的原因嗎?

更新

當我嘗試使用git push deploy master而不是sudo git push deploy master它可以成功連接,但由於權限原因無法進行推送。

Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 356 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
To ubuntu@example.com:/opt/git/gitpg.git
   d6cc9c3..25ddaa4  master -> master
error: unable to create directory for .git/refs/remotes/deploy/master
error: Cannot lock the ref 'refs/remotes/deploy/master'.

更新2

我將本地目錄權限更改為當前用戶,現在它無需sudo即可工作。 但是我仍然不知道為什么不使用sudo。

嘗試將您的公共密鑰放在.ssh/authorized_keys中的服務器中,或使用其他類似的協議:

ssh://ubuntu@example.com/opt/git/gitpg.git

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM