我有一个使用 Mercurial 管理并使用 Jenkins 构建的 Java 项目。有没有办法阻止开发人员签入破坏构建的代码?我知道我可以用 Ant 和 Mercurial 钩子做到这一点,但是有没有办法用 Jenkins 做到这一点?
问问题
533 次
3 回答
9
这是我放在一起的图表来说明其他帖子中的想法:
于 2011-09-11T21:46:53.523 回答
8
让您的开发人员从一个 repo 中提取(我们将其命名为“master”)并推送到另一个 repo(我们将其命名为“staging”)。(很容易在中的一个简单的default-push
位置.hgrc
)
如果构建成功,Jenkins 从 staging 中提取并推送到 master,否则恢复 Jenkins 的存储库副本。
只有詹金斯应该能够推送给主人。
于 2011-09-11T21:26:34.330 回答
3
这里没有使用 Jenkins 的经验,但是利用 Mercurial 优势的 KISS 解决方案可能是这样的:
- 克隆主存储库
- 将更改从开发人员的机器中提取到克隆中
- 在克隆上运行构建
- 如果构建成功,则从克隆推送到主控,否则删除克隆并通知开发人员
于 2011-09-11T15:16:12.950 回答