5

我正在尝试为巡航控制创建一个新项目。为此,我将其添加到我的 ccnet.config 文件中

<project name="MyProj"
         description="MyProjproject">

  <triggers/>

  <sourcecontrol type="git">
    <repository>GitAddr</repository>
    <branch>releaseName</branch>
    <autoGetSource>true</autoGetSource>
    <fetchSubmodules>true</fetchSubmodules>
    <executable>C:\Program Files (x86)\Git\cmd\git.exe</executable>
    <tagOnSuccess>false</tagOnSuccess>
    <commitBuildModifications>false</commitBuildModifications>
    <commitUntrackedFiles>false</commitUntrackedFiles>
    <tagCommitMessage>Unation Web Build {0}</tagCommitMessage>
    <tagNameFormat>Unation-Web-Build-{0}</tagNameFormat>
    <committerName>Oscar Albrecht</committerName>
    <committerEMail>oalbrecht@unation.com</committerEMail>
    <workingDirectory>d:\GIT\Sources\WEB</workingDirectory>
    <timeout>60000</timeout>
  </sourcecontrol>

  <tasks>
      <exec>
        <!-- if you want the task to fail, ping an unknown server -->
        <executable>ping.exe</executable>
        <buildArgs>localhost</buildArgs>
        <buildTimeoutSeconds>15</buildTimeoutSeconds>
        <description>Pinging a server</description>
      </exec>
  </tasks>

  <publishers>
    <xmllogger />
    <artifactcleanup cleanUpMethod="KeepLastXBuilds"
                     cleanUpValue="50" />
  </publishers>

</project>

但我得到一个

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.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)

我可以使用 git 扩展和 git bash 来提取文件,但是 CruiseControl 给了我这个错误。这是非常奇怪和令人沮丧的,因为它工作了一段时间,我什至可以创建一个 msbuild 文件来编译它等等,但是它停止工作而没有更改,现在我被卡住了。

会发生什么?

编辑:我将超时时间增加到 2 小时。我开始构建,并在第二台机器上开始拉动。我可以完成 3 次拉取,而我在 ccnet 中获得的信息仍然是“git fetch origin”。它似乎被锁定了。有没有办法检查控制台输出的操作?

4

2 回答 2

3

可能是账户问题。您需要更改 CC 服务帐户。Git 是基于 ssh 和 ssh 绑定到用户帐户。

于 2013-06-05T02:15:37.290 回答
0

是账户问题。我遇到了类似的问题,并通过从services.msc重新启动服务CruiseControl.NET Server来解决它。

于 2015-03-25T13:26:25.060 回答