Wordpress-使用版本控制将更新推送到多个服务器的最佳实践

Wordpress-使用版本控制将更新推送到多个服务器的最佳实践,wordpress,git,version-control,Wordpress,Git,Version Control,所以我要添加另一个WP博客,但我想保持版本控制。然后我开始思考,这将如何影响我目前的WP工作流程。基于我在使用WP方面的有限经验,当WP开发团队推送更新时,我在管理控制面板中看到一个指示。在这里,我只需单击按钮,就可以在幕后实现更改。这种方法适用于版本控制之外的单个WP实例,但更多节点和版本控制中的情况又如何呢 一些WP更新包括代码和模式更改,因此我不能在不实现新模式更改的情况下发布代码。我能想到的最好方法是执行以下操作: 本地化版本控制中存储的当前WP版本 下载最新(稳定)的wp文件 提取到本

所以我要添加另一个WP博客,但我想保持版本控制。然后我开始思考,这将如何影响我目前的WP工作流程。基于我在使用WP方面的有限经验,当WP开发团队推送更新时,我在管理控制面板中看到一个指示。在这里,我只需单击按钮,就可以在幕后实现更改。这种方法适用于版本控制之外的单个WP实例,但更多节点和版本控制中的情况又如何呢

一些WP更新包括代码和模式更改,因此我不能在不实现新模式更改的情况下发布代码。我能想到的最好方法是执行以下操作:

  • 本地化版本控制中存储的当前WP版本
  • 下载最新(稳定)的wp文件
  • 提取到本地路径(在步骤1中创建)
  • 差异更改(可选)
  • 将更改提交到版本控制
  • 登录到每台服务器
  • 进入维修模式
  • 获取最新的更改
  • 实现新的模式更改(????)
  • 试验
  • 退出维护模式
  • 第九步是什么绊倒了我。我是否从本地(新更新的)模式中转储模式,然后为每个服务器导入该模式(或者使用提供的模式更改文件,如果WP包含id)

    有没有更好的方法

    ----2014年1月20日编辑----

    在进一步考虑之后,我想知道是否应该设置某种类型的mysql复制?具有具有读/写访问权限的单节点访问权限,因此它可以进行仅限于数据库的更改(即取消激活小部件),但其他服务器提供从复制到的只读mysql实例读取的博客内容。这样,只有一台服务器正在进行更改,其他服务器将从中进行更改。在我的研究过程中,我注意到一些更改,如通过functions.php或style.css对子主题的更改,可以在版本控制中跟踪,但其他更改,如激活/取消激活小部件,则完全基于sql,这在版本控制中是不可能跟踪的

    有没有更好的方法

    • 不要触摸WP核心(你真的需要它吗?)

    • 只对核心进行一次黑客攻击,以将WP核心的默认存储库URL替换为您的URL,然后在存储库中使用系统自动更新程序

    我没有触及核心,如果我需要添加功能,我会尝试通过编辑器添加功能。我想知道的是,如果我在我的开发分支中添加了一个新主题,我如何获得对生产机器的更改。由于添加新主题还包括向数据库中插入数据,但开发人员和生产部门之间的结果集将不同,我不想清除生产部门的数据。@MikePurcell-正确编写的主题(或插件)不需要手动更改架构(无论如何这都是个坏主意)必须使用默认WP方式首次安装。对于以后的更新-请阅读,您是否建议进行初始开发,请点击prod。然后在prod中使用自我更新功能,不再处理开发版本?@MikePurcell-否,使用默认方式安装插件|主题,在Github上阅读自动更新程序的自述,并按照其中的说明进行操作