git:致命的:无法从远程存储库读取

我正在设置与http://danielmiessler.com/study/git/#website git来pipe理我的网站。

我已经到了指令的最后一步:git push website + master:refs / heads / master

我正在使用win7中的git ming32命令行

$ git push website +master:refs/heads/master Bill@***.com's password: Connection closed by 198.91.80.3 fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 

这里的一个问题可能是该程序正在寻找Bill@***.com。 当我通过SSH连接到我的网站时,我有一个不同的用户名(可以说'abc')。 所以也许这应该是abc@***.com。 如果是这样,我不知道如何改变这个,或者如果我可以推下一个别名

您可以指定SSH作为远程URL的一部分发送给远程系统的用户名。 在远程主机名之前放置用户名,后跟一个@

 git remote set-url website abc@***.com:path/to/repo 

确保在.git/config有正确的url

 url = git@github.com:username/repo.git 

如果是第一次推送,则需要设置正确的上游

 $ git push -u origin master 

您可以检查使用哪个键:

 $ ssh -vvv git@github.com 

答复应该包含这样的内容:

 debug1: Next authentication method: publickey debug1: Offering RSA public key: ~/.ssh/id_rsa ... You've successfully authenticated, but GitHub does not provide shell access. 

也可以在~/.ssh/config定义ssh的规则,比如基于别名:

  Host github HostName github.com User git IdentityFile "~/.ssh/id_rsa" Host git HostName github.com User git IdentityFile "~/.ssh/some_other_id" 

您可以设置连接到不同的端口,使用不同的用户名等每个别名。

我前一阵面临同样的问题

我的.git / config了

 url = git@github.com:manishnakar/polymer-demo.git 

我用它取代了

 url = https://github.com/manishnakar/polymer-demo.git 

它现在的作品:)

您的ssh密钥很可能已经从ssh代理中删除

 ssh-add ~/.ssh/id_rsa 

其中id_rsa是一个与git repo相关的ssh密钥

尝试使用未unset GIT_SSH删除GIT_SSH环境variables。 这是我的问题的原因。

在做了一些研究后,我终于find了解决scheme,你已经为plink.exepath声明了一个环境variables。 所以,如果你删除该path,重新打开git bash,并尝试通过SSH克隆它将工作。

参考这个链接

http://sourceforge.net/p/forge/site-support/2959/#204c

这通常是由于SSH密钥与远程不匹配造成的。

解决scheme:

  1. 转到terminal,input以下命令(Mac,Linux)replace您的电子邮件ID。

    ssh-keygen -t rsa -C“you@email.com”

  2. 使用以下命令从字ssh开始复制生成的密钥。

    cat〜/ .ssh / id_rsa.pub

  3. 将其粘贴到你的遥控器的github,bitbucket或gitlab中。
  4. 保存。

确保ssh-agent正在运行:eval“$(ssh-agent -s)”

https://help.github.com/articles/generating-ssh-keys/#step-3-add-your-key-to-the-ssh-agent

我有同样的问题。

这个错误意味着你没有指定你的代码将被推送的远程URL位置。

您可以通过2种方式(主要)设置远程URL:

  1. 通过在Git Bash上执行命令指定远程URL。

    • 导航到您的项目目录

    • 打开Git Bash

    • 执行命令:

      • git remote set-url origin <https://abc.xyz/USERNAME/REPOSITORY.git>
  2. 直接在configuration文件中提到远程URL

    • 导航到您的项目目录

    • 移动到.git文件夹

    • 在文本编辑器中打开configuration文件

    • 复制并粘贴在下面的行

      • [remote "origin"] url = https://abc.xyz/USERNAME/REPOSITORY.git fetch = +refs/heads/*:refs/remotes/origin/*

有关更多详细信息,请访问此链接 。

在你的.git / config文件中

 [remote "YOUR_APP_NAME"] url = git@heroku.com:YOUR_APP_NAME.git fetch = +refs/heads/*:refs/remotes/YOUR_APP_NAME/* 

简而言之

 git push YOUR_APP_NAME master:master 

我有同样的错误。 解决scheme如下:我更正了我的URL在.git/config 。 刚刚从HTTPS克隆URL复制。 那会是这样的:

 url = https://github.com/*your*git*name*/*your*git*app*.git 

有效。

在我的情况下,我用一个密码的SSH密钥用github进行身份validation。 我没有在Windows中正确设置选播(仅在cygwin中)。 缺less的步骤是将git_ssh环境variables指向plink.exe。 另外,您需要将github.com放入plink known_hosts。

  plink github.com y <then ctrl-c> 

希望这可以帮助!

我当然希望intellij会给我一个更有用的错误,或者更好的是要求我inputssh密码。

另一个解决方法:

由于networking问题,有时会发生在我身上。 我完全不了解根本问题,但切换到不同的子networking或使用VPN解决了这个问题

对于我的情况,我在办公室使用公司networking(没有互联网连接)。 为了从github中提取代码,我在gitbash中设置了https代理,然后使用https而不是ssh来提取代码,它工作正常。 但是,当推送代码时,https代理将无法工作。 所以要么切换到互联网networking(与互联网连接)或设置SSH代理可以解决这个问题。

其实我尝试了很多东西来使它在Win7上工作,因为改变SSH exectun fron native来构build它,向后和相同的错误。 偶然的,我把它改成“.git / config”文件中的HTTPS:

 [remote "origin"] url = https://github.com/user_name/repository_name.git fetch = +refs/heads/*:refs/remotes/origin/* 

终于奏效了 所以也许它可以为你工作。

对于那些在私人远程回购中有这个问题的人。 确保你已经接受了远程服务器上的Xcode协议:花了我们几周的时间才find这个修复

从命令行使用这个命令:sudo xcodebuild -license

我只是想补充这个问题。 我有Git安装使用PLINK和Pageant进行身份validation,我也遇到了错误FATAL ERROR: Disconnected: No supported authentication methods available (server sent: publickey) 。 我打开了选美赛,但错误仍然显示出来。 问题? 我没有在Pageant中加载私钥(要添加一个密钥,请按照这些说明 )。 这很简单。

我只是想分享一下,我发现一个简单的解决scheme:

拒绝访问。 致命的:无法从远程存储库读取。 请确保您拥有正确的访问权限并存在存储库。

只需从gitlab注销并再次login。 这些问题应该得到解决。

当使用putty / pageant时,确保你没有忘记给pageant添加正确的SSH密钥,否则这个错误会显示出来。 DUH

在我的情况下,这是postBuffer ..

 git config --global http.postBuffer 524288000 

供参考阅读: https : //gist.github.com/marcusoftnet/1177936

转到MINGW32terminal把这个命令:git branch –set-upstream-to = origin /(branch Name)

如果你仍然得到相同的错误,请确保在git settings-> ssh tab-> ssh客户端中使用设置为openSSH 在这里输入图像说明

我有同样的错误,这使我对这个答案没有帮助。 我试图创build一个新的“裸”存储库第一次使用下面的命令来跟踪到一个NTFS的位置:

 cd myrepository git init --bare \\myserver.mycompany.local\myrepository.git git init git status git add . git status git commit -m "Initial Commit" git remote add origin \\myserver.mycompany.local\myrepository.git git push -u origin master git status 

我的问题原来是使用反斜杠而不是在NTFS位置的正斜杠,当试图添加原点设置(新)跟踪上游分支。

我必须使用以下命令删除原点:

 git remote rm origin 

然后使用预期的正斜杠再次添加原点

 git remote add origin //myserver.mycompany.local/myrepository.git 

希望这有助于未来的人。

我有同样的问题,过了一段时间,我看到我在root用户(与sudo -s)。 愿这有助于某人。

更换电脑后出现此错误。 我使用BitTool的SourceTree。

所以我必须在Bitbucket设置>安全性> SSH密钥中添加由SourceTree生成的SSH密钥,在新的计算机上连接到我的Bitbucket帐户。

据我的经验, 这个问题发生的原因之一是因为你有一个不稳定的互联网连接

我面临同样的问题; 只需在命令窗口中运行即可:

git remote add origin https:// your / repository / url

添加到“我有同样的问题和…”,我也使用git通过Ming32(git bash)shell在Windows中。

在我的情况下,回购需要我input一个密码,而不是使用SSH密钥,但它不是提示密码,只是说“致命的:无法读取…”,虽然我可以正常SSH,使用plink和SSH ,并设置了两个已知主机密钥。

我在这里和其他SO中尝试了大部分的build议。

我发现最后它在Powershell中工作正常 ,但没有在git bash中,没有任何更改或更正。

 user@server:/etc/nginx$ cat .git/config ... [remote "origin"] url = git@gitlab.com:user/.git fetch = +refs/heads/*:refs/remotes/origin/* ... 

1)使用ssh而不是htpps。 2)在git中使用ssh密钥(添加ssh密钥)。 3)如果你是root用户,使用ssh密钥。

 $ sudo ssh-keygen $ cat /root/.ssh/id_rsa.pub $ git init $ git add file $ git commit -m "add first file" $ git remote add origin git@gitlab.com:user/example.git $ git push -u origin master 

我也遇到了同样的问题,经过很多的尝试,我发现他们是无效的。 最后,我用了

 $ git push origin master 

有效!

强烈推荐网站: 一天学习git