我无法克隆一个Git存储库,并得到这个错误:

krishna.soni@KRISHNACHANDRAS /c/Projects $ git clone http://stage.abc.com:10088/pqr
http://<url>/<repository> Cloning into '<repository>'... fatal: could not read Username for 'http://<url>': No such file or directory

我读过Bitbucket, Windows和“致命:无法读取密码”,但仍然有问题。

我继续前进,但现在得到这个错误

sh.exe": chown: command not found

krishna.soni@KRISHNACHANDRAS /c
$ git clone ssh://krishna.sonipayu.in@stage.payupaisa.
/projects
Cloning into 'C:/projects'...
Permission denied (publickey).
fatal: Could not read from remote repository.

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

> krishna.soni@KRISHNACHANDRAS /c
>     $ git clone ssh:<url>
>     ts
>     Cloning into 'C:/projects'...
>     Permission denied (publickey).
>     fatal: Could not read from remote repository.

Please make sure you have the correct access rights

并且存储库存在。


当前回答

我在Mac上遇到过这个问题——当我正确地设置SSH来访问我的Git存储库时,重启后(有一段时间Mac处于僵局),我的所有凭据都被删除了。显然,由于某种原因,酒吧钥匙被设置为644,导致它从钥匙链中被删除。readd:

Chmod 600公钥 ssh-add ~ /。Ssh /[您的私钥]-这应该显示身份已添加。您想要的密钥文件是没有.pub扩展名的密钥文件。 Ssh-add -l将显示新添加的标识

编辑:显然MacOS有删除密钥的倾向-下载High Sierra更新后(但我还没有安装它),我的密钥被删除了,我必须通过ssh-add重新添加它

其他回答

macOS / Linux (Ubuntu):

1. 要进行身份验证,您需要从您的用户设置中将您的SSH密钥对的公共部分添加到bitbucket:用户设置——> SSH密钥

你可以在你的~/中找到上述公共部分。SSH目录,通常为id_rsa。酒吧。注意文件名的.pub部分为Public。 如果你还没有,它会帮助你生成一个

你还没有完成…

2. 您需要让系统知道对哪个远程主机使用哪个键,因此将这些行添加到~/中。ssh / config文件

Host bitbucket.org
 IdentityFile ~/.ssh/PRIVATE_KEY_FILE_NAME

其中PRIVATE_KEY_FILE_NAME是您的SSH密钥对的私有部分的名称,如果您没有乱动它,通常它的默认名称是:id_rsa 在这种情况下,将上面的PRIVATE_KEY_FILE_NAME替换为id_rsa(私钥没有.pub扩展名)

这看起来像是权限问题,而不是Windows 7的问题。

您的ssh密钥未被授权-权限被拒绝(publickey)。

您需要创建一个公共ssh密钥,并请求Git存储库的管理员添加ssh公钥

如何执行此操作的信息:保存ssh密钥失败

克隆时,我有一个类似的问题[我的错误: 权限被拒绝(公钥)。 无法从远程存储库读取。 请确保您有正确的访问权限。等 ]

我使用的是bitBucket/UBUNTU14.04,但是我已经有了一组我之前生成的密钥文件,并且我已经更改了文件的名称。我简单地将文件复制到标准id_rsa和id_rsa。Pub名称格式。然后我重新运行该命令,没有问题。

OBTW:我也可以通过使用HTTP样式的克隆来使用密码提示。

您需要执行ssh-keygen -t rsa命令创建新的ssh密钥。

这也许很愚蠢,但它确实发生在我们身上:

如果你正在使用bitbucket和Sourcetree,你只是复制粘贴克隆URL到新的回购对话框,它将显示相同的错误时拉或推。

确保你在URL之前删除了“git clone”的东西。