一、区别
定时构建:
不管远程代码分支上(Svn/Git)的代码有无更新,均执行定时构建任务
轮询SCM:
远程代码分支上(Svn/Git)只要有任何更新,则执行构建任务。
二、格式:* * * * *
- 第一颗*表示分钟minute:取值0-59,第几分钟执行
- 第二颗*表示小时hour:取值0-23,第几小时执行
- 第三颗*表示日day:取值1-31,第几日执行
- 第四颗*表示月month:取值1-12,第几月执行
- 第五颗*表示星期week:取值0-7,每周第几天执行
三、示例
#每半小时构建一次OR每半小时检查一次远程代码分支,有更新则构建 H/30 * * * * #每两小时构建一次OR每两小时检查一次远程代码分支,有更新则构建 H H/2 * * * #每天凌晨两点定时构建 H 2 * * * #每月15号执行构建 H H 15 * * #工作日,上午9点整执行 H 9 * * 1-5 #每周1,3,5,从8:30开始,截止19:30,每4小时30分构建一次 H/30 8-20/4 * * 1,3,5
四、总结
过程中使用定时构建还是轮询SCM需要看具体场景,下述列了两个常用的场景,供参考。
#每天8点定时构建,不考虑代码是否有更新 H 8 * * * #工作日,每天8点定时构建,9-20点期间每30分钟检查一次,有代码更新则构建一次 定时构建:H 8 * * * 轮询SCM:H/30 9-20 * * 1-5
配置完成后可以点击应用,检查配置是否正确(配置不合法会有提示)或到https://crontab.guru进行测试验证。