我正在开发一个根本不涉及任何源代码的分支,它只是有助于项目的文档。因此,浪费我的CI提供程序的CPU周期并堵塞队列是没有意义的。我知道我可以通过在提交消息中添加[skip ci]
来实现这一点,但我总是忘记在提交时执行此操作。一段时间后,来自CI机器人的消息到来了,我再次忘记了自己。
当然必须有更好的方法!
我正在考虑使用Git钩子将[skip ci]
添加到此分支上的任何提交消息。
我的问题是:
我正在使用Travis CI。
答案 0 :(得分:2)
有一些方法可以自动将[skip ci]
添加到您的提交消息中(请参阅例如this answer),但我认为这不是最佳解决方案。你说:
我正在开发一个根本不涉及任何源代码的分支,它只是有助于项目的文档。
因此,实际上没有必要永远触发此类分支上的任何构建。
specify which branches to build or not build很容易,但必须提前配置,并且必须知道要阻止哪些分支。
这两个问题的解决方案是everyone's favorite tool, regular expressions。将这样的内容添加到.travis.yml
:
branches:
except:
- /^feature\/docs\/.*$/
(另见the Travis CI docs。)
然后,只要您想编写文档,就创建一个以feature/docs/
开头的分支,它将不会由Travis CI构建。