php - 如何在 git 中包含 WordPress 插件更改和相关的数据库迁移?
问题描述
我有 2 个 WordPress 环境(开发和生产),我正在开发开发环境,当我添加一些新插件时,有些会在数据库中创建表或更新配置,我该如何处理所有这些更改,然后迁移到生产环境D B?
我正在使用 git 进行文件更改,但我无法处理由插件创建的数据库更改。如何在 git 中整合这些变化?还是其他解决方法?
我正在使用 WordPress docker 映像,并将现有文件夹安装到
/var/www/html
我将挂载的文件夹上传到 git 以进行版本控制。
除了管理版本控制工具中的所有更改。
更新:
我正在使用 wordpress 5.2.2。
如何将数据库置于 git(版本控制)下?这个是一样的。但看起来有点不同。
正如这个答案所说,保留数据转储和模式转储。数据转储与以前的差异信息是否正确?这样我就可以手动将此更改添加到类似liquibase
的变更集?
我担心的只是第三部分插件更改的数据库更改,我几乎不会追踪。
解决方案
这就是我们所做的。任何适当的插件都会在激活时初始化新的数据库表/字段,并在插件停用时删除数据库表/字段。这样,插件本身就可以处理所有数据库迁移功能。我们以这种方式编写插件,几乎所有插件都以类似的方式工作。我们只需将插件代码提交到 git,在 Dev 中进行测试,然后发布到生产环境并激活。Boom 数据库已迁移。几乎所有数据库更改都是由新插件安装驱动的。让它通过自己的激活/停用挂钩来管理数据库。
推荐阅读
- regex - Google Analytics 中的正则表达式双斜杠
- c# - C# - 创建没有空属性的对象
- javascript - 根据 2 键从数组中删除重复对象
- php - 我是zend 3 的新手。当我安装 zend 并点击 url (localhost/zf3/public) 然后我得到了这个错误
- laravel - 在 Laravel5.7 中验证数组上的重复值
- javascript - 在框架 vue 上绑定
- python - 使用三个点 (...) 打破冗长的行会给出无效的语法
- php - 在 Drupal 8 安装 mongodb 模块时出现语法错误
- matlab - Matlab 到 volttron 集成
- python - 在 Django 中下载多个文件而不创建 zip