2

我将 SourceGear Vault 和 applyLabel="true" 用于一个项目,因此当它构建时,它将在 SourceGear Vault 中为相应的项目创建一个标签。我的问题是

我有一个夜间构建,所以如果那天我没有对该项目进行任何更改,那么我该如何定义我的设置....

 <sourcecontrol type="vault" autoGetSource="true" applyLabel="true">
           <executable>c:\program files\sourcegear\vault client\vault.exe</executable>
           <username>john</username>
            <password>password</password>
            <host>server</host>
            <repository>Default Repository</repository>         
            <folder>$/Projects/xxx/xxx/xxx/source/xxx/xxx/xxx/xx.source</folder>
                    <ssl>false</ssl>
                    <timeout units="minutes">10</timeout>
                    **<useWorkingDirectory>false</useWorkingDirectory>**
                    <workingDirectory>C:\CCNET\build\xx\xx\</workingDirectory>
        </sourcecontrol>

问题是我不想要代码没有更改的构建标签。

任何帮助表示赞赏。

4

2 回答 2

2

在您的项目定义中应该有一个<triggers>部分。对于我们的夜间构建,我们使用以下内容:

   <triggers>
      <scheduleTrigger time="00:30" buildCondition="IfModificationExists"/>
   </triggers>

这告诉 CCNet 仅在自上次构建以来已签入更改时才在 0030 小时构建。这里的重要部分是buildCondition="IfModificationExists",它可以用于任何触发器类型。

于 2008-11-12T14:20:54.413 回答
0

所以斯科特你的意思是你对夜间和正常构建或不同的触发器有不同的定义?

于 2008-11-12T18:01:37.463 回答