git - 使用 Git 特性分支工作流,什么时候更新 master 分支?

标签 git jenkins jenkins-pipeline git-flow git-workflow

我对 git 和 Jenkins 还很陌生。我们想使用 Jenkins 并遵循 feature-branch-workflow concept ,我相信这类似于 GitHub flow .

我知道 master 分支应该始终是当前部署在生产环境中的分支,但是什么时候应该更新 master 分支?似乎有两种选择:

  1. 在部署到生产环境之前: pull 请求获得批准并且与 master 的成功 merge 触发构建、部署到暂存区 环境,QA 测试,然后有人按下按钮进行部署 投入生产
  2. 在部署到生产环境之后:某些东西(例如 pull 请求)触发了构建、测试等,并且代码成功发布到生产环境 - 然后更新了 master

但是在使用选项 (1) 的情况下,如果测试没有通过并且新更新的 master 不会发布到生产环境中,那么您是否会在当天回家之前重置 master?

最佳答案

if the tests aren't passing and the newly updated master won't get released into production,

您可以先更新临时 QA/集成分支,运行测试,如果这些测试通过则更新 master(并触发发布到生产环境)

短暂的”意味着:您创建/重置 QA 分支只是为了集成标记为下一个版本的功能分支。
你可以看到一个 example of ephemeral branches in the git workflow .

关于git - 使用 Git 特性分支工作流,什么时候更新 master 分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45155277/

相关文章:

jenkins - Pipeline 中定义的 DynamicReferenceParameter

git - 如何 checkout 旧提交并将其推送到当前分支?

小团队的 Git 开发策略

将一组提交限制在特定分支的 git 策略

git - 如何在 Mac 上开始使用 Git

jenkins - 使 URL 成为 Hudson 构建的结果

jenkins - 在 Jenkins 管道文件中询问密码

jenkins - 在 Jenkins Pipeline 中生成自定义 GitSCM 变更日志

macos - 从另一台机器访问 Mac OS X 上的 Jenkins

jenkins - 我怎么知道 Jenkins 管道的哪个阶段失败了