【发布时间】:2011-09-18 13:09:08
【问题描述】:
在我们当前的开发工作流程中,我们引入了数据库迁移(使用Ruckusing)以保持我们开发人员的数据库架构同步。它工作得很好,使用起来非常简单,但现在我们已经切换到 git 作为 VCS,我们正面临数据库版本控制系统中的下一个问题。
当检查一个已经开发了一段时间的分支时,可能会发生数据库架构与我来自的分支中的架构有很大不同的情况。这在某些情况下会导致数据库冲突。从逻辑上讲,我们似乎需要根据我们之前所在的分支运行迁移,但这会很快变得复杂,并且肯定会遇到一些人的问题。据我所知,没有一个支持分支的数据库迁移系统??
切换到功能分支时会增加复杂性,我们可能需要向上运行一些迁移,而另一些向下运行......从技术上讲,使用我们当前的 dbmigration 脚本这似乎是不可能的,是否有任何合理的替代方案?在一个非常活跃和分支的开发系统中,是否有任何首选的方式来处理数据库迁移?
【问题讨论】:
-
这就是我所说的潘多拉魔盒。它非常复杂,需要为每个在完整代码库上工作的人提供大量规则和教育。这包括优先合并包含数据库更改等的分支的规则......
标签: git git-branch database-migration database-versioning