当您在本地机器上有开发版本的应用程序时很方便,您可以将其部署在 STAGE 服务器上进行测试(它是可选的),然后将其部署到 PRODUCTION 服务器上。当项目中的代码和数据有很好的自由裁量权时(例如,如果我们将所有代码和设置存储在项目文件中,并将数据存储在数据库中),您可以相对轻松地执行此操作。
MODX 将模板、片段等存储在数据库中。是的,我们可以将此代码移动到静态文件中,然后我们可以使用版本控制系统来跟踪这些项目的更改。但是这些在数据库中也有表示行。这意味着如果我们添加或删除一些项目,我们必须像以前一样更新数据库。
如果我们只是复制扩展的文件而不是通过包管理器进行安装,看起来我们也会遇到一些麻烦(因为扩展通常在 DB 中有自己的表)。
另一个问题是 DEV 和 PROD 上的应用程序在文件(配置)和数据库(例如用户帐户)中存储了不同的设置。
我仍然看不到组织迭代 DEV-STAGE-PROD 开发周期的明确方法。所以,我的问题是:
- 部署时应该(或必须)复制哪些文件和数据库表?
- 我应该用什么模式(替换,忽略)?
- 最简单和最快的方法是什么?
我最关心的是必须处理数据库。
PS如果重要的话,我说的是MODX的“革命”版本。