如何将WordPress自动更新与Git结合作为版本控制?

Far*_*mad 17 git wordpress version-control auto-update git-submodules

我正在尝试找到一个非常困难的任务的解决方案:正确版本控制WordPress,特别是在使用自动更新时.

WordPress允许用户只需单击按钮即可更新WordPress核心文件,主题和插件,从而实现了很多简单性.但是,当你使用像Git这样的版本控制网站时会发生什么?一旦我们点击"立即更新"按钮,我们的Git仓库就会失去同步,因此首先就会失去创建Git仓库的目的.

我一直在研究解决这个问题的方法,我能找到的是通过将组件分解为Git子模块来构建Wordpress安装的不同方法.其中一个最流行的例子是WordPress-Skeleton模板.

虽然这适用于版本控制WordPress的每个模块/组件,但它仍然不允许用户能够使用WordPress中的自动更新按钮,因为这将更新生产中的文件但不会将这些更改提交到您的Git仓库中.

在理想的世界中,我们应该能够对一个存储库中的所有文件进行版本控制,然后当我们单击"立即更新"按钮时,它应该自动更新我们的Git存储库.有谁知道如何实现这一目标?

我想到的一件事就是创建一个插件来监听更新事件,并在触发钩子后立即自动提交更改.不确定这是否是最佳方法.

如果有人有更好的方法我能做到这一点,请告诉我.

Von*_*onC 4

问题似乎是“立即更新”按钮触发“更新生产中的文件”,这些文件不属于 git 存储库。

除非他们可以:repo git 可以拥有专用于 WP 通常树结构的主分支,如WordPress-Skeleton中所述,以及用于监视生产中这些文件的更改的第二个分支。

从 git 2.5 开始,每个存储库可以有多个工作树(这是“开箱即用的部分”)。
这意味着您可以将另一个文件夹(在原始 git 存储库之外)声明为同一 git 存储库的工作树。

一旦更新更改了“生产中的文件”,git add -A; git commit就可以简单地检测到所述更改并提交它们(在专用分支中)。