无法从git@github.com获取

时间:2014-05-07 01:55:30

标签: git jenkins

好的,我是詹金斯的新手。

我正在阅读Jenkins: The Definitive Guide并尝试设置第一个示例。

我遇到问题并且我已经搜索过,并且没有真正找到答案。

所以,我在这里发帖,希望这是一个简单的配置问题。

我做了以下事情:

  • 将Jenkins设置为Windows服务并安装Git插件
  • 使用Git-Bash打开一个窗口并创建密钥对
  • 将公钥复制到我的Git帐户
  • 按照书中的示例
  • 中的指示克隆了Git存储库

但是,每次Jenkins尝试从Git存储库中提取更改时,我都会看到以下错误消息:

SCM变更开始:

Building in workspace C:\Jenkins\workspace\game-of-life-default
 git.exe rev-parse --is-inside-work-tree
Fetching changes from the remote Git repository
 git.exe config remote.origin.url git@github.com:xxxx-xxxxxx/game-of-life.git
Fetching upstream changes from git@github.com:xxxx-xxxxx/game-of-life.git
 git.exe --version
 git.exe fetch --tags --progress git@github.com:xxxx-xxxxx/game-of-life.git +refs/heads/*:refs/remotes/origin/*

ERROR: Timeout after 10 minutes

FATAL: Failed to fetch from git@github.com:xxxx-xxxxx/game-of-life.git

hudson.plugins.git.GitException: Failed to fetch from git@github.com:xxxx-xxxxx/game-of-life.git

1 个答案:

答案 0 :(得分:0)

关于Jenkins民意调查Git回购的超时似乎正在进行中:JENKINS-20750

  

我们遇到了类似的问题.. 2008服务器,Jenkins 1.560,git-client-plugin 1.8.0。

     

git polling挂起,奇怪的错误无法创建~/.ssh文件夹...(文件夹在那里)作为jenkins用户在服务器上运行,而不是作为系统帐户运行。
  未设置HOMEDRIVEHOMEPATH个环境变量   我们使用这个脚本来终止>3分钟SCM轮询过程,这似乎可以让事情再次相当可靠。

Jenkins.instance.getTrigger("SCMTrigger").getRunners().each()
{
  item ->
    println(item.getTarget().name)
    println(item.getDuration())
    println(item.getStartTime())
    long millis = Calendar.instance.time.time - item.getStartTime()

    if(millis > (1000 * 60 * 3)) // 1000 millis in a second * 60 seconds in a minute * 3 minutes
    {
      Thread.getAllStackTraces().keySet().each()
      { 
        tItem ->
          if (tItem.getName().contains("SCM polling") && tItem.getName().contains(item.getTarget().name))
          { 
            println "Interrupting thread " + tItem.getName(); 
            tItem.interrupt()
          }
       }
    }
}
  

如果我们可以将SCM轮询超时与一般GIT轮询超时分开设置,那就太好了。 (1分钟应该足够)