2014-09-19 596 views
18

我在Windows上使用「TortoiseGit」。當我試圖從標準的Windows資源管理器的右鍵菜單中克隆,我得到這個錯誤:Git錯誤:「請確保您擁有正確的訪問權限並存在存儲庫」

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

更確切地說,終端的快照如下:

git.exe clone --progress -v "[email protected]:\git\AlfaRobot.git" "C:\Work\AlfaRobot" 

Cloning into 'C:\Work\AlfaRobot'... 
Permission denied, please try again. 
Permission denied, please try again. 
Permission denied (publickey,password). 
fatal: Could not read from remote repository. 

請確保您有正確的訪問權限 和存儲庫存在。

git did not exit cleanly (exit code 128) (21450 ms @ 19.09.2014 10:36:58) 

我應該怎麼做才能讓git正常工作?

+1

嘗試生成SSH密鑰生成並添加 – 2014-09-19 07:03:36

+0

(在Windows或Git的是bash)使用命令行管理程序SSH密鑰:'$的ssh - 凱基-t RSA - C「you[email protected]」' – Belter 2017-01-05 10:32:19

回答

5

您試圖通過ssh克隆存儲庫:[email protected],並且您的SSH密鑰未在服務器上正確設置。有多種原因,這一點:

  1. 你的公鑰可能不會被保存在用戶的git的authorized_keys文件
  2. 如果1是不正確的私鑰不會被保存在您的HOMEDIR中的.ssh /文件夾中。
  3. 權限設置不正確

如果以上所有3是不真實的,然後我唯一的結論可以嘗試: [email protected]:AlfaRobot.git 假設AlfaRobot.git是git的用戶HOMEDIR,而不是一個文件夾叫混帳其內部駐留在用戶git的HOMEDIR中。

+0

謝謝。將私鑰文件移動到.ssh解決了我的問題。 – Pithikos 2015-02-10 10:51:22

0

另一個問題可能是您的互聯網連接。很明顯可能,但花了我幾分鐘,以找出我的無線網絡已關閉:)

+0

根據錯誤消息,它看起來不像互聯網連接是一個問題。 – jbmusso 2015-04-30 18:55:05

12

這個問題可能與您的ssh代理有關,您的ssh密鑰尚未添加ssh-agent.You必須申請以下使用終端的步驟: -

  1. $的eval 「$(SSH代理-S)」

    代理的pid 5867

  2. $的ssh-添加

    爲/home/you/.ssh/id_rsa輸入密碼短語:[] 身份加入:/home/you/.ssh/id_rsa(/home/you/.ssh/id_rsa)

那麼它會工作..化學J.

+1

克隆時仍然出現錯誤:'致命的:無法從遠程存儲庫讀取數據。' – 2016-04-08 16:35:24

22

你git的網址可能已經改變。通過使用以下命令

git remote set-url origin [email protected] 
+2

您的解決方案在嘗試了幾種解決方案後正常工作。 – lmiguelvargasf 2016-04-20 01:05:42

+0

FYI github現在使用一個url方案:'git remote set-url origin https:// github.com/username/repository.git' – RyPope 2017-08-12 00:39:51

+0

@RyPope你可以使用任何協議git(ssh)或https,這是你的願望。 github現在有兩個協議'git'和'https'。 – Vishnu 2017-08-18 07:43:06

3

的rsa.pub(即生成的公鑰)更改本地目錄的URL,必須在github上>>設置>> SSH密鑰頁面添加。檢查一下,您沒有將此公鑰添加到存儲庫設置>>部署密鑰中。如果是這樣,從這裏刪除條目並添加到提到的第一個地方。

detail中設置發佈密鑰。

因此它會起作用!

1

下面是我如何解決這個問題。我在Win7/10上使用了Babun(mintty.exe)。當我嘗試了上面提到的許多解決方案時,它們都不起作用。我意識到也許我只是使用錯誤的SSH代理... 所以我運行echo $GIT_SSH找出來,它顯示的路徑Plink.exe。 我真正期望的是OpenSSH。

所以,我添加以下的一行到~/.zshrc文件

Note 1: You can execute it in babun directly also
Note 2: You if you use bash then the config file is .bashrc

export GIT_SSH=$(which ssh) 

和它的作品!

10

對我來說,那是因爲機上沒有SSH密鑰。本地檢查SSH密鑰:

$ cat ~/.ssh/id_rsa.pub 

這是您的SSH密鑰。將其添加到存儲庫中的SSH密鑰。
在gitlab去

profile settings -> SSH Keys

,並添加關鍵

+0

我已經添加了您提及的密鑰,但仍然收到拒絕訪問消息。請幫忙 – Jet 2017-09-05 07:29:35

相關問題