我的最新版Netbeans(NetBeans IDE 7.3(Build 201302132200)
)似乎完全失灵了,当我尝试使用SSH访问自己的GitHub存储库时。使用HTTP URL时没有问题。
由于我导入了一个已存在的GitHub存储库的本地副本(新建>具有现有源代码的PHP项目
),曾经使用TortoiseGit创建过,因此在本地副本元数据中保存了远程设置(可能在.git
文件夹中)。因此,Netbeans在Push到远程仓库
窗口中提供了Select Configured Git Repository Location
选项。但是未成功。
尝试以下操作:
当我使用SSH URL(
git@github.com:user/reponame.git
)和Password
选项,使用帐户密码时,Netbeans会尝试连接GitHub(远程),并在约5秒钟后抛出错误Cannot connect to the remote repository at git@github.com:user/reponame.git
。使用SSH URL和
Private/Public Key
选项时,Netbeans立即抛出完全相同的错误,因此我认为由于某种原因它甚至不会尝试连接GitHub。
更奇怪的是,Netbeans没有要求输入私钥密码。我已经设置了它,但故意没有输入Netbeans来测试连接过程。我非常确定Netbeans会要求我提供此密码,因为它不应该能够在没有密码的情况下使用私钥。出乎意料的是,它没有要求输入密码,而是显示错误,表示无法连接GitHub。当然,那只是一个测试。输入正确的密码后,我得到完全相同的效果。
我直接从GitHub网站复制了我的存储库URL,没有进行任何修改。似乎我只能使用HTTP URL(https://github.com/user/reponame.git
)。这可以正常工作,并确保所有项目(URL、用户、reponame、密码,最终互联网连接)都没问题。但是,似乎Netbeans在SSH URL上完全失败。
无论我在Push到远程仓库
窗口中选择Select Configured Git Repository Location
还是Specify Git Repository Location
,上述情况始终发生。无论我做什么,我都无法通过Netbeans的SSH访问存储库,使用HTTP是唯一的选项。
我使用 puttygen.exe
从 PuTTY官网 创建了我的私钥公钥对。我将私钥保存在Netbeans安装目录中,并将公钥添加到GitHub的SSH设置页面。我使用了我通常在TortoiseGit中使用的分步指南。
我不知道还有什么遗漏或者是我做错了什么?有什么想法吗?