我无法在Eclipse中的Bitbucket中克隆或推送到git存储库:
这很奇怪,因为前一天我没有任何问题。我已经下载了3次没有运气的sts。此错误一直显示。我也安装了SourceTree,它说“这不是一个有效的源路径/ URL”:
如果我使用git命令导入项目,它可以工作,但我不想使用EGit执行此任务,因为我是git的新手。
我不知道这是否与它有关,但在同一目录中我有android-adt-bundle。这个工作得很好,但项目在于GitHub,而不是Bitbucket。此外,我正在与另一个人合作,他能够从Bitbucket存储库获取数据并将数据推送到Bitbucket存储库。我看了很多帖子,但没有一个人帮助过我。
我正在使用Windows 7顺便说一句。
答案 0 :(得分:111)
如果你有一个带有过时或自签名SSL证书的GIT服务器修复服务器,那么一切都应该运行正常。
以下解决方案仅仅是客户端上的一个修补程序,应该避免因为它会破坏您的凭据和内容的安全性。 “How can I make git accept a self signed certificate?”中对此进行了详细说明,如果以下情况有效,您可以尝试使用更复杂,更安全的解决方案。
在我的情况下,Eclipse使用不同的git配置存储作为命令行,因此没有选项
git config http.sslVerify false
set(我使用repo for working with invalid/untrusted SSL cert的命令行设置)。
在Eclipse中添加选项会立即解决问题。添加选项
Add entry...
,然后将http.sslVerify
放入密钥框,并在值框中添加false
。似乎是不同操作系统上Eclipse 4.4(Luna),4.5.x(Mars)和4.6.x(Neon)的有效解决方案。
答案 1 :(得分:12)
由于以下原因而发生:
1)防火墙。
2)网络问题。
3)代理设置不匹配
4)通过不同的路由器连接 - 未经网络授权。
5)Git代理验证详细信息
答案 2 :(得分:7)
最后,我感谢steps outlined in the Eclipse forum:
eval `ssh-agent`
ssh-add C:/User/you/ssh/id_rsa
ssh git@github.com
以下是您刚才所做的:您运行了ssh-add所需的ssh-agent。然后使用ssh-add记下密钥的位置。然后你试着ssh到GitHub。对最后一个命令的响应应该是您已经在GitHub上成功进行了身份验证,但是您没有shell访问权限。这只是一个身份验证测试。如果身份验证不成功,则必须对其进行排序。试试详细版本:
ssh -v git@github.com
假设这有效......
选择ssh作为协议,然后返回到URI框并在开头添加“git +”,如下所示:
的git + SSH://git@github.com/UserName/ProjectName.git
在存储库路径框中,删除前导斜杠
我没有使用SSH git@github.com,而是使用SSH git@bitbucket.org。
现在我可以毫无问题地推送和导入。
答案 3 :(得分:6)
原因之一是将Fiddler2配置为解密HTTPS流量。关闭Fiddler2,它应该可以正常工作。
答案 4 :(得分:4)
如果您的本地防火墙阻止您的应用程序从您的计算机发送任何网络流量,则可能会导致此问题。即出站流量或出口流量规则。
请尝试禁用防火墙进行快速测试,看看这是否可以解决您的问题。如果确实如此,则为您尝试用于推送或拉入git存储库的应用程序设置适当的防火墙策略。
答案 5 :(得分:4)
我将-Dhttps.protocols=TLSv1.1,TLSv1.2
添加到eclipse.ini
并且它正在运行。
我用java 1.7
答案 6 :(得分:3)
就我而言,事实证明“首选项 - >网络连接”中的全局代理设置干扰了git。这有点令人困惑,因为git具有代理配置的专用属性。无论如何,我已经将存储库主机添加到“代理绕过”列表中,问题就消失了。
答案 7 :(得分:2)
当我安装了安装了Windows8 / Kaspesky的新笔记本电脑时,我遇到了同样的问题。 我遇到问题eclipse:无法打开git-upload-pack。 我也遇到了maven的问题。 我也遇到了Skype的问题。
当我禁用卡巴斯基时,一切都开始正常工作。
答案 8 :(得分:2)
我在 eclipse 2020-12 中遇到了完全相同的问题。在 Preferences->Git 中,我将“Http Client”更改为“Java built-in HTTP”,问题解决了。
答案 9 :(得分:2)
最近我在使用现有存储库时遇到了同样的问题。当我尝试从上游无法获取的对象获取并出现日食问题时:无法打开git-upload-pack。
对我来说,在 eclipse.ini 文件中添加TLS版本后,下面的解决方案工作是
Dhttps.protocols = TLSv1.1,TLSv1.2
对于Java7,需要添加TLSv1.1,对于Java8,需要添加TLSv1.2
注意:添加以上配置后,需要重新启动eclipse。
答案 10 :(得分:1)
我遇到了类似的问题。我只是按照以下步骤 1.团队>远程>配置从上游获取... 2.提供https:bit bucket uri,然后保存并获取。 3.重置项目中的最新提交。团队>重置>从远程文件夹中选择最新提交 4.然后同步工作区。团队>同步(在同步透视图中) 5.右键单击项目并覆盖本地副本。 6.单击“拉”图标。
答案 11 :(得分:1)
使用https连接从git导入时,添加https.sslVerify为false ...
答案 12 :(得分:1)
对于那些仍有此问题的人,上述解决方案均不适合您:
更新您的java和Eclipse版本
在我的情况下,我从java 7更新到java 9,Eclipse Mars更新到Eclipse Oxygen,这个问题解决了!
答案 13 :(得分:1)
我在Ubuntu 12.04LTS上使用Eclipse Kepler SR2并尝试使用HTTPS访问内部GitHub。 不幸的是,我启动Eclipse的底层JVM遇到了服务器自签名证书的问题。切换到Eclipse的不同JVM获得了与我们的GitHub工作的HTTPS连接。
创建一个使用不同JDK的简单Eclipse启动器,例如使用OpenJDK:
/Eclipse_Kepler_4.4.2/eclipse -vm /usr/lib/jvm/java-6-openjdk-i386/jre/bin
答案 14 :(得分:0)
我遇到了类似的问题,对问题的快速解决方法是确保在eclipse.ini文件中设置JVM选项以使用jre7。较旧的Jre带有旧的本地策略文件,这将返回错误。还需要注意的是,您需要指向javaw而不是java。
-vm C:\ PROGRA〜2 \的Java \ jre745 \ BIN \ javaw.exe的 -vmargs -Xms40m -Xmx512m -XX:MaxPermSize参数=256米 -Dsun.lang.ClassLoader.allowArraySyntax =真
答案 15 :(得分:0)
我刚刚遇到同样的错误,“无法打开git-upload-pack”,在Eclipse中使用BitBucket repo试图进行拉动或推送。 我通过将本地分支(Team / Switch To)切换到主分支并进行拉动来解决它,然后切换回我正在处理的分支并再次拉动。
答案 16 :(得分:0)
我在Spring Tool Suite(STS)上遇到了同样的问题,原来,我要做的就是更新STS网络配置中的代理设置。
窗口>首选项>常规>网络连接,然后在下拉列表中从“ 本地”中选择“ 手册”。
在这里,只需单击“编辑”,即可添加 http 和 https 的代理URL,端口和凭据。 应用并关闭。
希望它对您有用。
答案 17 :(得分:0)
对于在IBM JDK上运行的Eclipse,在-vmargs之后的eclipse.ini中必须强制执行以下两行:
-Dhttps.protocols = TLSv1.1,TLSv1.2
-Dcom.ibm.jsse2.overrideDefaultTLS = true
答案 18 :(得分:0)
使用VPN时,我遇到了同样的问题。重新启动互联网即可轻松解决。
答案 19 :(得分:0)
答案 20 :(得分:0)
答案 21 :(得分:0)
我终于通过在IPv6
上禁用network configuration
来解决了这个问题
Screenshot of my network configuration
请注意,我使用VPN连接。如果您也这样做,则必须重新启动它。 我很确定,即使您不使用VPN,它也能正常工作。
答案 22 :(得分:0)
我在Eclipse中设置了代理设置,并且没有通过ssh连接,导致错误。
答案 23 :(得分:0)
要解决SSL问题,您也可以尝试这样做。
从bitbucket服务器下载NetworkSolutionsDVServerCA2.crt并将其添加到ca-bundle.crt
需要从git安装目录中复制ca-bundle.crt并将其复制到您的主目录
cp -r git / mingw64 / ssl / certs / ca-bundle.crt~ /
然后这样做。这对我有用 cat NetworkSolutionsDVServerCA2.crt>> CA-bundle.crt 强>
git config --global http.sslCAInfo~ / ca-bundle.crt
git config --global http.sslverify true
答案 24 :(得分:0)
我收到此错误消息,因为我的用户与我的git配置中的repo预期不同。
这显然会触发上面提到的SSL证书失败。
修复正确的用户为我解决了这个问题。
答案 25 :(得分:0)
Eclipse Mars 4.5.2中的解决方案: 窗口 - >偏好 - >团队 - > Git - >存储库设置 - >的AddEntry 密钥:http.sslVerify 值:false
答案 26 :(得分:0)
我刚刚将网络设置从Manual
更改为The AWS::SQS::QueuePolicy type applies a policy to SQS queues.
,重新启动,错误消失了。
我正在使用RAD 8.0.4.3和旧版本的EGit连接到TFS / Git。 ; - )
答案 27 :(得分:0)
问题还可能是系统时间错误(几年),导致Git证书无效。
答案 28 :(得分:0)
我已经尝试了所有这些方法,但它没有用,然后一位同事告诉我Putty Key Generator用于生成1024位的密钥,但现在Putty默认生成2048位密钥,所以你只需要改变“生成密钥中的位数“它应该可以工作。
答案 29 :(得分:-1)
我必须在之前的所有内容之后报告另一种可能性:
我得到了#34;无法打开git-upload-pack"在eclipse GIT拉操作期间(通过代理隧道),所以我必须尝试通过浏览器访问相同的GIT URL,最终在代理中正确进行身份验证,并且只有在通过eclipse之后才可以从GIT中获取而没有任何错误。希望有用。