CCNet多git存储库超时异常

CCNet多git存储库超时异常,git,cruisecontrol.net,Git,Cruisecontrol.net,我们有以下设置: Win7专业64位 CCNet v1.6.7981.1 msysgit v1.7.9-preview20120201 我们的Git服务器安装在另一台运行64位Ubuntu服务器的机器上。 CCNet windows服务使用管理员帐户运行,并使用ssh访问Ubuntu git服务器。 当执行强制构建时,我们没有问题,获取源代码和构建是可以的。当它在时间触发器上运行时,会出现以下异常: ThoughtWorks.CruiseControl.Core.CruiseControlE

我们有以下设置:

  • Win7专业64位
  • CCNet v1.6.7981.1
  • msysgit v1.7.9-preview20120201
我们的Git服务器安装在另一台运行64位Ubuntu服务器的机器上。 CCNet windows服务使用管理员帐户运行,并使用ssh访问Ubuntu git服务器。 当执行强制构建时,我们没有问题,获取源代码和构建是可以的。当它在时间触发器上运行时,会出现以下异常:

ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation has timed out.
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.ProcessSourceControl.Execute(ProcessInfo processInfo)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Git.GitFetch(IIntegrationResult result)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Git.CreateUpateLocalRepository(IIntegrationResult result)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Git.GetModifications(IIntegrationResult from, IIntegrationResult to)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.MultiSourceControl.GetModifications(IIntegrationResult from, IIntegrationResult to)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.QuietPeriod.GetModificationsWithLogging(ISourceControl sc, IIntegrationResult from, IIntegrationResult to)
   at ThoughtWorks.CruiseControl.Core.Sourcecontrol.QuietPeriod.GetModifications(ISourceControl sourceControl, IIntegrationResult lastBuild, IIntegrationResult thisBuild)
   at ThoughtWorks.CruiseControl.Core.IntegrationRunner.GetModifications(IIntegrationResult from, IIntegrationResult to)
   at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request)
我们的ccnet项目使用多个git存储库,示例配置如下所示:

<sourcecontrol type="multi">
      <sourceControls>
        <git>
          <repository>git@somerepo.git</repository>
          <executable>$(gitcmdpath)</executable>
          <timeout units="minutes">10</timeout>
        </git>
        <git>
          <repository>git@somerepo2.git</repository>
          <executable>$(gitcmdpath)</executable>
          <timeout units="minutes">10</timeout>
          <workingDirectory>c:\somerepo2</workingDirectory>
        </git>
      </sourceControls>
    </sourcecontrol>

git@somerepo.git
$(gitcmdpath)
10
git@somerepo2.git
$(gitcmdpath)
10
c:\2
我们有几个ccnet项目使用同一组存储库(但签出到不同的文件夹),当没有代码更改时,它们都以相同的方式失败。我碰巧将interval触发器设置为相同的长度,因此它们几乎同时检查存储库。这就是他们暂停的原因吗?我也无法从ccnet.log中找到任何引用此文件的内容来调试此文件


欢迎任何帮助。

目前我有一个解决办法,将连续构建放入一个队列,将完整构建放入另一个队列。连续构建以30秒的间隔基于源代码管理修改,而完整构建则是每天一次,因此它们现在是分开的。我已经实施了大约2周了,没有问题