管理 Heroku 管道中的修补程序

Pet*_*ota 5 git hotfix release heroku

我有一个简单的 Heroku 部署管道(审查应用程序 -> 开发 -> 登台 -> 生产)。如果我推送某些内容,master它将触发 CI(codeship),如果测试成功运行,Codeship 会将更改部署到developmentHeroku 应用程序。这很简单。

但是我们如何管理修补程序呢?如果我们master出于任何原因无法将当前部署到生产中会发生什么。

我刚刚读了一篇文章,说我们应该使用 git 标签处理修补程序。这是管理修补程序的唯一方法吗?我们可以在不使用 git 标签的情况下处理这些吗?

Iga*_* S. 3

master是您的部署分支。因此修补程序也在分支中完成master

我假设你也有一个开发分支。因此,如果您有正在进行的工作,您可以继续在开发分支上进行,而不是将其合并到master.

如果master损坏 - 您必须修复它(因此是修补程序)。您修复问题,将其推送到 master,然后继续部署周期。

然后您还应该将修补程序挑选回您的开发分支。

更新

如果您希望坚持使用单个master分支,那么我看不到使用修补程序分支的解决方法。

您不必每次都标记一个。但关键是要知道哪个版本是当前生产槽中的最后一个稳定版本。

开发人员继续工作master- 它进入了登台阶段,但您认为它无法继续进行母带处理。

那么你:

  • 基于当前版本创建一个新分支 - 这是修补程序分支。
  • 创建修复
  • 部署它
  • 将其合并到master