无法使用GIT Extensions推送到存储库

时间:2011-05-26 12:30:32

标签: git authentication ssh push

由于这个原因,我现在正在拔头发。我已经下载并安装了GIT,为GIT Extensions做了同样的事情(因为我们将在VS2010上使用它),一切都运行得很好,花花公子。我提交了更改,然后发现我的团队成员无法从网站结账。看来我必须将我的更改推送到服务器。

所以这是交易。当我尝试推送到github.com网站时,收到以下错误消息:

“身份验证错误 该命令导致错误,通常意味着该错误 PuTTy认证代理没有运行。或者说正确 私钥尚未加载。

加载密钥后,您可以按重试。 '重试''加载SSH密钥''中止'“

我创建了一个SSH密钥,所以我尝试加载它。我可以浏览我的密钥,我这样做。我按'加载',然后'重试'。然后,出现相同的错误。

好的,这样就行不通了。我去FileMenu遥控器 - >腻子 - >启动验证代理。我得到一个已经运行的错误,所以应该没问题。去遥控器 - >腻子 - >生成或导入密钥,告诉我它没有加载密钥或任何东西,但我认为那时候也没关系。

遥控器 - >管理远程存储库。我看到了我的仓库的URL,以及我的.ssh密钥的位置。按“测试连接”会出现以下错误:

“使用用户名'git' 致命错误:已断开连接:没有可用的支持身份验证方法“

所以我在这里,由于上述问题,我无法推送到服务器。我总是自己解决问题或者在Google上找到解决方案,但是我在这里一片狼,,它就行不通。任何可以帮助我摆脱这个源代码管理灾难的东西都会很棒,因为我现在可以杀死任何人。

谢谢!

编辑:我应该注意,当推送告诉我“无法验证服务器实际上是服务器,因为我不知道服务器的密钥”时,问题就开始了。然后我尝试对其进行故障排除,从而导致了上述情况。也许这会有所帮助..

4 个答案:

答案 0 :(得分:19)

前面,我不知道这是否与它有关,但不能伤害到。转到插件 - >设置 - > Github,并在那里输入您的详细信息。我发现那里一片空白。解决了我的问题的原因如下:在C:\ Users \< my name> \ .ssh下的.ssh文件夹中,是我的私钥,由PuTTY程序(.pkk文件)生成。我做错了,我不应该创建一个新密钥。

继续< Git Extensions>遥控器 - >腻子 - >生成或导入密钥。现在,转到转化 - >导入密钥。浏览到.ssh文件夹,找到'id_rsa'(它的名字就在这里,没有扩展名)。选择它,然后按打开。输入密钥的密码(这是Git用于与GitHub服务器通信的密钥,如图所示)。然后,选择保存私钥,并将其保存在某处(我在.ssh文件夹中)。

现在,继续推送您的更改。按< Manage>。在那里,浏览到新创建的私钥。然后按Test Connection。这对我有用,它说'使用用户名'Git'\ n Hi vname>'等等< Save>,然后点击< Push>。然后它为我工作。

答案 1 :(得分:9)

您可以尝试使用OpenSSH代替PuTTY。

在GitExtensions主窗口中打开Settings - > Settings菜单,选择Ssh标签,然后在OpenSSH中选择Specify which ssh client to use

答案 2 :(得分:0)

我也使用Git Extensions,但仅仅因为来自GitHub的东西不适用于32位Win ...... 我发现推送最简单的方法是使用你已经安装的Git GUI本身(在某些地方" C:\ Program Files \ Git"但它应该在&#34下的开始菜单中; Git& #34;文件夹),所以我在Git Extensions工作,拉动,克隆,合并,评论和更改为主版本然后我只需打开Git GUI打开我的存储库并推送它(主版本 - 我' m还没有让别人去GitHub! 我知道这不是不工作程序的解决方案,但它非常简单,你不需要再安装任何东西:)希望我能帮助别人!

答案 3 :(得分:-1)

如果你想使用PuTTY ...... 生成的新密钥:遥控器 - >腻子 - >生成或导入密钥,它可以工作。