我已设法配置jenkins任务,以检查特定的GIT标记,以便在此博文http://erics-notes.blogspot.be/2013/05/jenkins-build-latest-git-tag.html
之后进一步部署到远程服务器简而言之,我需要在jenkins jobs SCM配置中将refspec和branch属性定义为以下值:
Refspec: +refs/tags/live/*:refs/remotes/origin/tags/live/*
Branch Specifier (blank for 'any'): */tags/live/*
但现在,我想我们开发人员中的任何人都可以创建一个名称可以部署的标签(live / ...)。 jenkins的GIT插件遍历所有可用的分支,寻找匹配的标记名称。
如何确保jenkins工作(如上面博客文章中所述配置),只有在基础提交位于特定分支上时才签出标记,例如我们受保护的"主人"分支?
答案 0 :(得分:1)
在广泛搜索上述问题的答案之后,我有一种感觉,即无法将部署限制为指向特定分支上的提交的标记。我在某个地方找到了类似问题的答案(我今天再也找不到了)说明," GIT不是那样设计的#34;。标签位于未绑定到任何分支的全局命名空间中。 所以唯一的解决方案可能是限制某些用户的标记可能性,但这是一个不同的故事,我不想再进一步遵循这条路径。
请随时确认某一天: - )
在开始时,我想到了部署" master"的HEAD。分支到STAGE和特定标签(从主分支)到LIVE。 现在我将介绍另一个分支到STAGE的分支。