我有机会使用开发,登台和生产环境来生成Drupal网站.使用subversion确保代码在站点之间保持同步是一项简单的任务.不那么简单的是在安装之间传播对数据库数据(而不仅仅是模式)的更改.
任何Drupal开发人员都会熟悉这个原因.Drupal在数据库中存储某些配置设置,特别是与CCK字段,视图和其他允许使用管理界面动态设置的模块相关.简单地同步模式是不够的 - 基本信息也在数据中.
我正在寻找的是一种同步这些数据库更改的方法,以便如果一个开发人员在登台服务器上进行CCK字段更改,则可以将它们传播到本地开发环境以进行更多工作,最终传播到生产环境.
有没有一个工具可以做到这一点?在这样的项目中处理单个或多个开发人员的流程是什么?
对于基本数据同步:我使用mysqldump每晚将所有数据转储到.sql文件.然后脚本将其检入版本控制系统.这是一个简单的bash脚本,但你可以在几乎任何平台上做类似的事情......
我刚才读了一点,我不确定我的方法是否会有所帮助.我从来没有必要合并SQL转储,所以我无法评论它的管理效率.
虽然您应该能够将更改(架构,新数据)推送到登台/生产服务器,但您可能会有更多麻烦将更改拉回到开发人员.正如我所说 - 合并可能有也可能不可能.我只是不知道.