繁体   English   中英

CCNET的多个项目

[英]Multi Projects with CCNET

我有如下的GIT回购,

 \main
       \Module A
       \Module B
       \Shared

当我在模块B上进行更改时,CCNET将先从模块A进行构建,然后再由模块B进行构建,我不希望CCNET这样做,这会花费很多时间。 我只希望ccnet仅在模块B上构建更改。

有人请帮助我:我在CCNET Config中的1个项目:

enter code here
   <project name="Dashboard 5.0" queue="Dashboard_01" queuePriority="01" category="01">
<artifactDirectory>&pathToArtifactsDirectory;Dashboard 5.0\</artifactDirectory>
&workingDirectory;
<webURL>http://&buildServerAddress;/ccnet/server/&buildServerName;/project/Dashboard 5.0/ViewLatestBuildReport.aspx</webURL>
&modificationDelaySeconds;
<triggers>
  <intervalTrigger seconds='30' buildCondition='IfModificationExists'/>
  <scheduleTrigger time='03:00' buildCondition='ForceBuild' name='Scheduled'/>
  <scheduleTrigger time='11:00' buildCondition='ForceBuild' name='Scheduled'/>
</triggers>
<state type="state" directory="&pathToStatesDirectory;Dashboard 5.0\" />

    <sourcecontrol type="git">
      <repository>&gitAddress;</repository>
      <branch>master</branch>
      <autoGetSource>true</autoGetSource>
      <fetchSubmodules>false</fetchSubmodules>
      <executable>C:\Program Files (x86)\Git\cmd\git.exe</executable>

      <commitBuildModifications>false</commitBuildModifications>
      <commitUntrackedFiles>false</commitUntrackedFiles>
      <timeout>3000000</timeout>
    </sourcecontrol>


<tasks>
  <nant>
    <executable>&pathToNantFile;</executable>
    <baseDirectory>&pathToBuildScriptsDirectory;Dashboard 5.0\</baseDirectory>
    <buildArgs>-D:projects_to_build=dashboard_framework</buildArgs>
    <buildFile>cruise.build</buildFile>
    <targetList>
      <target>automate</target>
    </targetList>
    <buildTimeoutSeconds>3000</buildTimeoutSeconds>
  </nant>

</tasks>
<publishers>
  <merge>
    <files>
      <file>&pathDB5MainCheckoutDirectory;framework\build\test-reports\*Test.dll-results.xml</file>
      <file>&pathDB5MainCheckoutDirectory;framework\build\test-reports\Test*.dll-results.xml</file>
      <file>&pathDB5MainCheckoutDirectory;framework\build\test-reports\simian.xml</file>
    </files>
  </merge>
  <xmllogger />
</publishers>

对模块A或模块B的任何签入将导致项目节点以任何一种方式启动。 您要查找的内容与子文件夹上的subversion update命令执行的操作类似,而Git并非旨在采用这种方式。 另外,您可以为每个模块创建一个单独的存储库。 构建脚本或Nant任务也必须分开。

在Git中,如果您有几个总是独立检出的目录,则它们实际上是两个不同的项目,应该位于两个不同的存储库中。 您可以稍后使用Git子模块将它们合并在一起

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM