Perforce的trigger可以方便我们做一些提交后检查类的事情。
在游戏开发中,比如检测到本次提交含有策划的表格,就可以触发远程CI自动打表上传。
在Unreal项目中,引擎的源码更改是个很频繁的事情,为了方便策划和美术可以像unity一样打开编辑器,而不用自己手动编译,也可以利用此特性。
当检测到Engine和Project的Source目录,Plugins目录有提交,或者是.uplugin文件有变化,就可以远程触发CI开始构建编辑器,构建好的编辑器存到一个局域网的服务器上,本地再做一些更新编辑器的脚本就oK了
进去CMD,依次输入以下指令:
p4 set P4PORT=192.168.255.255:1666
p4 set P4USER=Alec
p4 set P4PASSWD=666666
p4 triggers
编辑完保存,关闭后如果出现,则说明语法有错误,需要检查下重新编辑
Error in triggers specification.
修改成功会提示以下消息:
Triggers saved.
在使用时发现,trigger文件对一些转义字符的支持不太好,好像一些括号也会有问题,所以可以在版本中加入一个bat文件,让trigger触发后执行这个bat脚本,bat脚本里面要做什么就很自由了。这个bat要先传到Perforce的服务器中,不然保存trigger文件时会提示找不到文件,因为它找的是服务器上的文件。
一个编写Trigger的小例子:
1 | Triggers: |