假设我有 2 个分支:
Develop与迁移:
V1_change1
V2_change2
V3_change3
V4_change4
V5_change5
Master迁移(部署在生产环境中):
V1_change1
V2_change2
现在我正在生产上进行修补程序,添加新的迁移V3_sth_completely_ Different,所以情况是:
Develop与迁移:
V1_change1
V2_change2
V3_change3
V4_change4
V5_change5
Master迁移(部署在生产环境中):
V1_change1
V2_change2
V3_sth_completely_different
接下来,我将合并部署到 master 的更改以进行开发(我正在使用支持分支来完成所有这些工作,但目前并不重要)。
我想要一致的数据库版本(V1、V2、V3 ...),所以我不想使用时间戳。因为没有回滚功能,我必须:
- 从数据库中手动删除 V3_change3、V4_change4、V5_change5 迁移
- 删除 schema_version 中的行
- 将名称 V3_change3 更改为 V6_change3 (如果没有冲突,如果有冲突我必须更改所有以下迁移)
最后我有:
Develop与迁移:
V1_change1
V2_change2
V3_sth_completely_different
V4_change4
V5_change5
V6_change3
Master迁移(部署在生产环境中):
V1_change1
V2_change2
V3_sth_completely_different
问题是:我是否做得太过分了?
如何使用 Flyway 管理修补程序并保留简单版本号 V1、V2、V3...?
我现在使用的过程非常麻烦。
=================================================== =====================
Flyway 常见问题解答涵盖了这一点处理热修复的最佳策略是什么? https://flywaydb.org/documentation/faq#hot-fixes但是它使用了您希望避免的 x.y 版本号。另一种方法是将版本号乘以 10 或 100,并使用中间的整数来表示修补程序。使用 10 可以得到 9 个修补程序,或者使用 100 可以得到 99 个修补程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)