2016-06-30 60 views
0

我在我們組織的github上創建了一個用於自動部署的新用戶。我跟着https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#platform-linux的文章。GitHub SSH訪問不起作用

不知何故,當我試圖將存儲庫克隆到服務器時,它曾經工作過一次。代碼正常運行,並退出服務器。今天,我們發佈了對代碼的更新,並且我想手動將代碼部署到服務器,所以我進入服務器並嘗試使用git pull來提取存儲庫。它給了我權限被拒絕錯誤。經過一些調試後,我意識到ssh-agent沒有運行。所以,我執行以下命令:

eval "$(ssh-agent -s)" 
ssh-add .ssh/id_rsa_staging 

現在,當我嘗試ssh -T [email protected],我看到歡迎的消息是:

Hi *****! You've successfully authenticated, but GitHub does not provide shell access. 

但是,當我嘗試從倉庫拉,我不斷收到此錯誤消息:

Permission denied (publickey). 
fatal: Could not read from remote repository. 

Please make sure you have the correct access rights 
and the repository exists. 

我查了資料庫,並且用戶閱讀訪問它。我再次檢查,如果密鑰匹配github和服務器,是的,他們做。我嘗試生成新的密鑰。我試過使用ssh/config文件。沒有什麼幫助...

我感謝任何幫助&的建議!


更新:

所以我想通了,git clone命令工作正常,但即使當我嘗試git pull混帳克隆之後,它給了錯誤。

回答

1

如果您使用sudogit pull/push到遠程,您需要確保您使用sudo來生成您的SSH密鑰。否則,您將不會使用最初生成的相同密鑰。

github doc for reference