原理:
使用jenkins的poll scm机制(https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin)
jenkins配置:
1,源码管理(Git):
Refspec:+refs/tags/*:refs/remotes/origin/tags/*
Branch Specifier (blank for 'any'):**
2,构建触发器:
Poll SCM:打勾勾,但是什么都不要填
服务器端部署:
方法有三:
1,git hook
在服务器端部署post-receive hook,内容如下:
curl [jenkins address]/git/notifyCommit?url=[git clone address]
不需要权限,所以不用加用户名密码,就可以生效了~
2,gerrit hook
如果使用了gerrit的话,git服务器端的hook就不能用了,所以需要找能替代git post-receive的hook,这里可以用ref-updated(注意不是ref-update),内容同上,位置:review_site/hooks
3,gerrit trigger
这里使用的是ref-updated,但是branch哪里不知如何写,试了之后比较乱,分支更新也都触发了,故没有用。有会的欢迎留言,先谢过了~