这一直是我心中的一个大问号.
我很快就会转向Mercurial或Git用于我的网络软件,有时候我的分支机构需要重大的数据库更改,其他分支机构不应该看到.这个,我不能总是为我的分支共享相同的数据库.
是否有一些标准的方法来处理分支和克隆的数据库更改?你们都做了什么?我正在使用MySQL.
解决方法
使用数据库changset工具可能非常有用.我已经使用liquibase(
http://www.liquibase.org)来管理数据库的版本控制.我会热烈地向任何人推荐这个工具. Liquibase支持变更集,具有可配置的回滚方案.但是,它是用于管理模式的工具,而不是实际数据.我不会尝试使用它来保持表数据是最新的.
但是,我仍然认为最好的办法是使用liquibase,并为不同的源分支使用不同的模式.