通常在启动 Drupal (6.x) 站点后,人们开始注册并输入他们自己的内容。每当需要升级时,生产中的数据库都会被复制到开发中,然后在开发中完成开发,然后推送到暂存中以供客户批准。
当网站最终准备上线时,出现了问题。生产服务器具有最新的用户输入内容,开发和登台具有最新的功能。简单地覆盖生产数据库是行不通的。我通常做的是写下对开发所做的工作,而不是按照步骤在生产中再次检查实现。随着系统变得越来越大,生产上的一个错误可能会导致业务损失。我无法关闭网站几个小时。我不知道在给定时间有多少人在使用该网站,即使如此,也不可能等到网站上没有人的时候再进行升级。
大家有什么好主意吗?
提前致谢。
最佳答案
您需要了解两个概念:第一个是“Exportables”,它通常是一种导出给定模块的所有配置的方法。第二个是“Features”(名字很可怕,是的)这是一种将一组可导出对象分组到给定变更集中以进行版本控制、更新、部署、回滚等的方法。
为澄清起见,许多模块实现了自己的“Exportables”方法,我在上面链接的是 Exportables 模块。这是一个更广泛的策略 - http://www.sthlmconnection.se/tips-and-tweaks/exportable-configuration-your-drupal-module-ctools
关于php - 在开发、暂存和生产之间同步 Drupal 站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3652760/