Git和本地WordPress:如何处理WordPress更新?

时间:2016-10-30 作者:mischa.mole

我看到Git和Wordpress经常在这里讨论,但我没有找到我的具体问题的任何答案,所以我将打开一个新的问题。

为了稍微熟悉一下git,我想将其用于我的个人wordpress博客。我的设置:

每次我通过FTP将bitbucket推到我的Web主机上时,本地Wordpress安装都会自动部署(没有机会在那里安装git,我使用buddy)

但我如何处理插件/wordpress核心更新?如果git(我认为)将它们直接应用于主机上的生产环境,会破坏整个想法,因此我禁用了自动更新。但如何继续?

本地安装更新,提交更新并将其推送到repo+主机?那么db的变化呢?wordpress/插件更新是否会改变数据库中的某些内容?我想是吧?

将它们安装到我的主机上,然后通过FTP下载所有内容,再次提交和推送(听起来很多余,不是我喜欢做的)?

您如何处理这个问题?还是我的设置在某种程度上完全错误?

1 个回复
最合适的回答,由SO网友:Rarst 整理而成

我会这样制定您的要求:

存储库应捕获站点的完整和精确状态,更新应在本地进行测试,并将其推送到生产环境中,数据库更新事件应在生产环境中可靠运行,仅使用Git,这确实意味着您需要在本地安装更新并将其提交到存储库中。

至于数据库更新,WordPress core本身会更新数据库结构,并在引导时检查它。如果在访问网站管理员时数据库已过时,系统将提示您执行更新。我认为,更繁忙的网站往往会选择覆盖这种行为,转而在后台按需运行。

这通常会留下一些特定的插件来检查它们是否使用自定义数据库表等。这在WP扩展中并不常见,大多数扩展都使用本地WP数据结构和api。

至于可能的改进,我建议研究Composer并将WP core作为依赖项处理。这将消除在回购协议中保留整个WP core副本的需要。

相关推荐

我从GitHub Repos获取插件是不是做错了什么?

我试图将paypal付款添加到我的网站,我使用带条纹的Gravirty表单加载项,但不是paypal加载项。我碰巧找到了(贝宝插件)的github回购。所以我下载了它,然后上传到我的网站,现在我有了插件。建造该网站的开发商已经购买了重力表单的许可证,但我没有,因为我与他失去了联系,否则我可以从原始来源获得插件。现在我所做的是违法的还是道德上的错误?如果是这样,为什么这样的软件和其他软件在github上很容易找到并公开?注意:此免责声明可在“Gravity Forms PayPal PayPal PayPa