当前位置: 首页 > 面试题库 >

Git获取失败

和季
2023-03-14
问题内容

我是詹金斯的新手。我只是在Windows
2016服务器上设置了詹金斯。我正在创建将git用于scm的新作业。当我去建立工作时,它会创建文件夹和git。它卡在git
fetch上。它超时。我已经将詹金斯设置为服务。我使用本地管理员帐户登录服务器,以尝试消除权限问题。从git
fetch日志中显示的错误是GitException,然后返回状态代码-1073741510。我搜索了,找不到任何地方的错误号。如果我打开命令窗口并转到使用完全相同的用户身份登录的完全相同的文件夹,然后发出完全相同的访存命令,它将正常工作。谁能帮我弄清楚从这里去哪里可以解决这个问题?

这是构建日志。

我抽象了事物的名称:

13:01:51 Started by user Admin
13:01:51 Building in workspace D:\Jenkins\workspace\MyProject - Staging
13:01:51 Cloning the remote Git repository
13:01:51 Cloning repository ssh://myserver.com/git/Software.git
13:01:51 > git.exe init D:\Jenkins\workspace\MyProject - Staging # timeout=10
13:01:51 Fetching upstream changes from ssh://myserver.com/git/Software.git
13:01:51 > git.exe --version # timeout=10
13:01:52 using GIT_ASKPASS to set credentials
13:01:52 > git.exe fetch --tags --progress ssh://myserver.com/git/Software.git +refs/heads/:refs/remotes/origin/ # timeout=5
13:06:52 ERROR: Timeout after 5 minutes
13:06:52 ERROR: Error cloning remote repo 'origin'
13:06:52 hudson.plugins.git.GitException: Command "git.exe fetch --tags --progress ssh://myserver.com/git/Software.git +refs/heads/:refs/remotes/origin/" returned status code -1073741510:
13:06:52 stdout:
13:06:52 stderr:
13:06:52 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:2042)
13:06:52 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1761)
13:06:52 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$400(CliGitAPIImpl.java:72)
13:06:52 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:442)
13:06:52 at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$2.execute(CliGitAPIImpl.java:655)
13:06:52 at hudson.plugins.git.GitSCM.retrieveChanges(GitSCM.java:1146)
13:06:52 at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1186)
13:06:52 at hudson.scm.SCM.checkout(SCM.java:504)
13:06:52 at hudson.model.AbstractProject.checkout(AbstractProject.java:1208)
13:06:52 at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:574)
13:06:52 at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
13:06:52 at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499)
13:06:52 at hudson.model.Run.execute(Run.java:1810)
13:06:52 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
13:06:52 at hudson.model.ResourceController.execute(ResourceController.java:97)
13:06:52 at hudson.model.Executor.run(Executor.java:429)
13:06:52 ERROR: Error cloning remote repo 'origin'
13:06:52 Finished: FAILURE

当我在同一文件夹中的命令行中手动执行git fetch时,它可以正常工作,并且不到2分钟。


问题答案:

我发现了一个非常类似于您的问题。

简而言之,一种快速的解决方案是卸载/重新安装git-for-window,并确保在安装过程中禁用“ Enable Git Credential
Manager”选项。

默认情况下启用此选项,并将git属性credential.helper设置在系统级别。这将迫使git客户端使用Windows的Git凭据管理器,而不是Jenkins提供的本地配置。因此,它会使您的构建挂起(如果以系统帐户身份运行节点)或失败(如果以本地用户身份运行节点)。

Git for Windows安装程序屏幕截图

此链接上还有其他两种解决方案。

https://support.cloudbees.com/hc/zh-CN/articles/221046888-Build-Hang-or-Fail-
with-Git-for-Windows



 类似资料:
  • 两年多来,我们一直在使用jenkins来构建一个项目。我们最近更新了jenkins和插件(我们需要maven-3的特性),现在它无法进行简单的git获取。下面是错误消息: 如您所见,jenkins发出的命令行包含一个未知选项——progress。我已经搜索了配置文件,找不到这是从哪里来的。以下是相关版本号: 詹金斯: 1.550 詹金斯Git羽绒: 2.0.1 git: 1.7.0.4 操作系统:

  • 有两种取得 Git 项目仓库的方法。 第一种是在现有项目或目录下导入所有文件到 Git 中; 第二种是从一个服务器克隆一个现有的 Git 仓库。 在现有目录中初始化仓库 如果你打算使用 Git 来对现有的项目进行管理,你只需要进入该项目目录并输入: $ git init 该命令将创建一个名为 .git 的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件,这些文件是 Git 仓库的骨

  • 想了解 Git 的各式工具该怎么用,可以阅读它们的使用帮助,方法有三: $ git help <verb> $ git <verb> --help $ man git-<verb> 比如,要学习 config 命令可以怎么用,运行: $ git help config

  • 假如你只能阅读一章来学习 Git,本章就是你的不二选择。 本章内容涵盖你在使用 Git 完成各种工作中将要使用的各种基本命令。 在学习完本章之后,你应该能够配置并初始化一个仓库(repository)、开始或停止跟踪(track)文件、暂存(stage)或提交(commit)更改。 本章也将向你演示如何配置 Git 来忽略指定的文件和文件模式、如何迅速而简单地撤销错误操作、如何浏览你的项目的历史版

  • 在将新更新安装到Visual Studio后,我才开始出现此错误。出于某种原因,我的建筑现在都不会从詹金斯那里得到。已经做了几个小时了,似乎还不明白。 我从比特桶里取东西。 请帮助。 由工作区C:\Program Files(x86)\Jenkins\workspace\CA[WS-CLEANUP]中的计时器生成启动删除项目工作区。。。[WS-CLEANUP]已完成克隆远程Git存储库克隆存储库h

  • 我正在开发一个应用程序,用于播放受Widevine保护的内容。我正在尝试在Genymotion虚拟Android设备上运行应用程序。但当我这样做时,应用程序无法获取DRM信息。所以下面的代码返回null,应用程序将无法继续。 我想知道genymops虚拟设备是否是问题的原因。如果是这样,是否可以配置genymops使其与DRM一起工作?任何帮助都将不胜感激。