我目前正在使用 git 和 jenkins 以及 maven 来执行构建。 我想知道您在“为生产而构建”方面的最佳实践是什么。
我的一个想法是创建一个新分支(我们称之为生产分支),并在我们完成 master 上的功能时构建它。
另一个想法是在发布一个版本(使用 maven:release)之后构建那个标签。
我很想听听该领域的一些真实经验
还有其他想法吗?
最佳答案
我们正在使用此处描述的分支模型 http://nvie.com/posts/a-successful-git-branching-model/
包括修补程序在内的所有开发工作都在分支机构中完成。然后,当一个或多个分支 merge 到 master 时,我们将推送到生产构建和部署。大多数开发是在开发分支的功能分支中完成的。当工作 merge 到开发中时,它被构建并部署到开发环境中,供其他项目使用,即开发是我们整个生产环境的开发镜像。然后当工作 merge 到部署到我们的 QA 环境的发布分支时。我们的 QA 团队会对其进行进一步测试,当他们签字时,我们会 merge 到 master 中。
我正在考虑对此进行一项更改,即每晚将所有功能和开发自动 merge 到一个单独的夜间分支中,该分支仅用于构建它并验证我们没有引入 merge 问题或新的集成错误.每天都会创建一个新的夜间分支。
关于java - git jenkins 和生产构建方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9247622/