Svn Cruisecontrol.net缺少签入

Svn Cruisecontrol.net缺少签入,svn,continuous-integration,cruisecontrol.net,Svn,Continuous Integration,Cruisecontrol.net,我已经建立了一个CCNET,总的来说它工作得很好。它轮询SVN服务器,并在看到任何更改时检查代码。除非,也就是说,在构建过程中存在签入。目前,如果有人在构建期间签入代码,那么构建和测试运行大约需要3-4分钟,crusie控件无法识别签入,并等待构建运行后出现签入 为什么会这样 这是ccnet.config文件的svn部分: <sourcecontrol type="svn"> <executable>svn.exe</executable> &

我已经建立了一个CCNET,总的来说它工作得很好。它轮询SVN服务器,并在看到任何更改时检查代码。除非,也就是说,在构建过程中存在签入。目前,如果有人在构建期间签入代码,那么构建和测试运行大约需要3-4分钟,crusie控件无法识别签入,并等待构建运行后出现签入

为什么会这样

这是ccnet.config文件的svn部分:

<sourcecontrol type="svn">
    <executable>svn.exe</executable>
    <trunkUrl>http://*******/svn/repos/psl/AcademyPro/ASP%20.Net/trunk/</trunkUrl>
    <workingDirectory>C:\CrusieControlProjects\AcademyPro\</workingDirectory>
    <username>******</username>
    <password>******</password>
    <autoGetSource>true</autoGetSource>
</sourcecontrol>

svn.exe
http://******/svn/repos/psl/AcademyPro/ASP%20.Net/trunk/
C:\CrusieControlProjects\AcademyPro\
******
******
真的
为清晰起见进行了编辑 问题不在于原子签入。签入可以完成,CCNET构建应用程序并开始运行测试。此时,其他人再次签入。一旦测试运行完成,我希望CCNET能够发现在测试运行期间进行的签入

这不会发生,签入会丢失,并且我期望的构建也会丢失


这是预期的行为,还是我不明白@Jeff Mattfield在说什么?

Subversion提交是原子的。在没有错误的情况下完成之前,它不可用于签出。在并行提交期间更新存储库或从存储库签出会导致该提交之前的存储库状态


换句话说,CC.NET在上次成功提交后获得了存储库中包含的内容。

我从来没有遇到过这个问题,而且我已经与SVN+CCNet合作几年了

  • 你能发布整个CCNet项目配置吗?例如,这可能与触发器有关
  • 您使用的是哪一版本的CCNet
  • 您说CCNet只检测构建后发生的更改。好的,但是当您查看项目构建报告(“自上次构建以来的修改”)时,它是只显示在上一次构建之后发生的修改,还是显示所有修改(包括在上一次构建期间发生的修改)

  • 检查ccservice.exe.config/ccnet.exe.config是否设置了调试日志级别:

    <configuration>
      <configSections>
      ...
        </log4net>
          <root>
            <level value="DEBUG"/>
          <root>
        </log4net>
      ...
      </configuration>
    </configSections>
    
    
    ...
    ...
    
    然后检查ccnet.log中的subversion输出以获取subversion版本

    2009-06-05 10:34:41,816 [15336:DEBUG] [cc-config svn.exe] <logentry
    2009-06-05 10:34:41,816 [15336:DEBUG] [cc-config svn.exe]    revision="1057">
    
    2009-06-05 10:34:41816[15336:DEBUG][cc config svn.exe]
    
    确保修订版是在svn trunkUrl(http://******/svn/repos/psl/AcademyPro/ASP%20.Net/trunk/)路径下提交的最新修订版


    否则,请查看日志和状态文件以获取更多线索。

    subversion服务器上的时间与cruisecontrol服务器上的时间相差约2小时。我解决了这个问题,现在签入看起来运行得更顺利了