我的NetBeans git设置似乎出了点问题。我在Windows 8.1上使用NetBeans IDE
8.0.1,并且在GitLab.com上托管了一个私人git存储库。但是自从GitLab
更新到版本7.3.1以来,我无法从NetBeans连接到git存储库。无论是否获取,拉入或推入,都将得到相同的响应:
_“无法通过https://gitlab.com/ <组名> / < 项目名> .git连接到远程存储库”_(组出于隐私原因,省略了名称和项目名称)
我发现了类似的(较旧的)问题,但我认为这不是同一个问题。我认为我的问题与GitLab社区版7.3.1的发布有关,尽管我看不出是什么原因造成的。
从NetBeans社区的此错误报告中,有人建议单击
“被动模式”
可以解决此问题,但是我不知道在哪里可以找到这种被动模式。在谷歌搜索被动模式下,我认为它与FTP有关,但是我使用https选项而不是ftps选项来连接git存储库,因此我认为这不适用于我的情况(如果我是错误的)。
有关NetBeans社区的另一个错误报告建议,我需要在gitconfig文件中添加以下行:
[http]
sslVerify=false
我将其添加到项目文件夹中的 .git / config 文件和用户文件夹中的 .gitconfig 文件,但这并不能解决问题。
另外,再次从GitLab.com克隆git存储库并不能解决问题。实际上,当我尝试克隆时,会得到相同的错误响应(如上所述)。
如果我在Windows上使用GitBash,我仍然可以连接到git并执行所有git命令。因此,我现在将使用它,但我也希望能够在NetBeans中使用Git存储库浏览器。
编辑:
我还在运行具有自动生成和测试功能的Jenkins,它也连接到GitLab.com上的同一git存储库。我有一段时间没有检查其日志,但是也无法获取。因此,该问题不仅限于NetBeans,因为Jenkins也受到影响。
这是詹金斯的构建尝试的输出:
Started by user Pieterjan van Gastel
Building in workspace C:\Program Files (x86)\Jenkins\workspace\<project-name>
> C:\Program Files (x86)\Git\bin\git.exe rev-parse --is-inside-work-tree
Fetching changes from the remote Git repository
> C:\Program Files (x86)\Git\bin\git.exe config remote.origin.url https://gitlab.com/<group-name>/<project-name>
Fetching upstream changes from https://gitlab.com/<group-name>/<project-name>
> C:\Program Files (x86)\Git\bin\git.exe --version
FATAL: Failed to fetch from https://gitlab.com/<group-name>/<project-name>
hudson.plugins.git.GitException: Failed to fetch from https://gitlab.com/<group-name>/<project-name>
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:622)
at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:854)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:879)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1254)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:624)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:530)
at hudson.model.Run.execute(Run.java:1732)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:234)
Caused by: hudson.plugins.git.GitException: Received fatal alert: handshake_failure
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.checkCredentials(CliGitAPIImpl.java:2115)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1151)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$200(CliGitAPIImpl.java:87)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:265)
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:620)
... 10 more
同样,出于隐私原因,省略了组名和项目名。
我想让我的单元测试自动执行,所以很高兴知道确切更改了哪些内容以及如何修复它。
现在,此问题也已作为问题发布到NetBeans.org和GitLab邮件列表中。
这个问题很容易解决。
John
Gibson(@jgibson)在GitLabCE问题#624上评论说他遇到了类似的错误。他解释说,“他 发现服务器上所有可用密码至少为256位。标准OracleJava附带的加密对于某些算法限制为128位。在 从Oracle安装了无限强度的加密软件包后,问题就消失了。请注意,无限强度软件包仅在美国合法可用。如果您不在美国,那么我认为OpenJDK可以代替。”
我遵循了他提到的链接,下载了 Java密码学扩展(JCE)无限强度管辖权策略文件7, 并按照下载随附的 自述 文件中的步骤进行操作。
我重新启动了NetBeans,问题已解决。
如下面的SO问题所示,这也适用于Eclipse IDE:“ Gitlab无法打开git-upload-packerror”
我尚未尝试使其与Jenkins一起使用,但我认为它也很容易修复。
我差点忘了,我在GitLab邮件列表上的Achilleas
Pipis找到了这个答案。
假设我想对其他人的项目实施修复。该项目位于GitHub上。 我可以在GitHub上创建一个fork并实现修复。 然而,我希望在GitLab上而不是在GitHub上创建我的fork。 这可能吗?怎么可能? 我读过这篇文章:https://about.gitlab.com/2016/12/01/how-to-keep-your-fork-up-to-date-with-its-origin/ 无论如何
问题内容: 我正在尝试使用GIT插件Jenkins拉出GIT的代码形式,并且该作业正在从属计算机上运行。 系统有 在系统中没有定义。 每当我在计算机上本地执行git clone时,它都能完美运行,但是从Jenkins那里我并没有成功。 它抛出以下错误: 是因为系统试图设置系统中不存在的http代理? 如果是,该如何预防? 或者,还有其他我想念的东西吗? 问题答案: 原来这是一个代理问题。 使用Je
问题内容: 我正在尝试在github仓库上连接詹金斯。 当我指定Repo URL jenkins时,返回以下错误消息: 无法连接到存储库:命令“ git ls-remote -h git@github.com:adolfosrs / jenkins-test.git HEAD”返回状态码128:stdout:stderr:主机密钥验证失败。致命:无法从远程存储库读取。请确保您具有正确的访问权限,并
问题内容: 我也是Jenkins和git的新手。我在创建了一个远程存储库并对其进行了本地复制。 然后,我想通过詹金斯链接它。我安装了git集成所需的插件,但是在配置新项目时,我不知道要在本地Repository URL中设置什么。有人可以帮我在哪里找到它吗? 问题答案: 在这种情况下,URL应该以文件协议开头,然后是存储库的路径。例如。
我可以使用Sonatype Nexus OSS连接到SSL存储库吗?(例如:https://repository.cloudera.com/artifactory/cloudera-repos/) 我找到这个文档,只有Nexus Pro支持在GUI上添加SSL证书。(http://books.sonatype.com/nexus-book/reference/ssl-sect-client-cer
问题内容: 在“源代码管理”部分中设置git config时遇到此错误,存储库网址是私有的,而不是来自github 我尝试在jenkins凭证提供程序中设置用户名和密码,但仍然无法正常工作。 我在终端中为该项目所做的克隆就是这样的,要求提供密码后就可以使用了 我认为他以某种错误的方式输入了用户名/通行证,有人对此有想法吗? 问题答案: 类似scp的ssh URL 意味着运行Jenkins的帐户将查