2

我们推动了很多迁移,它们往往进展顺利,但我知道迟早我们会推动迁移到必须回滚的生产环境。

尽管我们对代码进行了一些基本测试,并且这些测试可用于防止推送,但我们并没有强制要求迁移应该是可逆的(或至少是可回滚的)。

虽然我意识到某些迁移是不可逆的,但这并没有改变它们可能必须被逆转的事实(或者至少它们应该让我们非常清楚这是一个糟糕的迁移来正确的事实) .

你是否费心强制执行迁移是可逆的,如果是这样,你怎么做?

4

1 回答 1

1

在我的项目中,我们仅在简单时才编写向下迁移。有时不可能写相反的方向,例如当我们更改密码的加密格式时。

我认为如果您采取适当的预防措施,向下迁移不会提供那么多价值。我们部署到一个暂存环境,QA 使用它来接受特性,并在特性被接受后部署到生产环境。如果确实需要回滚,我们将使用备份。

于 2012-12-12T07:31:27.150 回答