如何在git中管理复杂的WordPress设置?

时间:2013-12-11 17:46:51

标签: wordpress git wordpress-plugin wordpress-theming git-submodules

我正在努力想出一个在复杂的WordPress项目中使用git的良好工作流程。我想知道人们是否可以推荐一种在这种情况下效果很好的工作流程。

这是我的情况,以及我遇到的问题。

情况:WordPress安装,包括WordPress和服务器的自定义配置文件,来自多个开发人员的两个或更多WordPress主题以及来自多个开发人员的20-25个插件。

问题:

  • 我考虑过为单个插件和主题创建回购,因为WordPress会处理自己的更新。这将更容易管理,但我仍然需要跟踪整个项目(使用哪些插件,WordPress配置文件,服务器配置文件,Google验证文件,favicon和其他不属于插件的资源或主题),我想要一种简单的方法来将整个项目克隆或部署到新服务器上。
  • 并非所有插件都有公共git repo,所以我要么将该代码添加到我自己的repo中,要么忽略这些插件的目录。

如果我在没有repo的情况下忽略了仍然存在该代码不在版本控制中的问题的插件。这使得克隆,部署或跟踪我自己的更改变得困难。

在大型WordPress项目中使用git的最佳工作流程是什么?

1 个答案:

答案 0 :(得分:2)

我为每个项目都有1个回购。这允许我跟踪本地和服务器两侧的更改。您还可以使用git hooks / cron等来保持服务器同步或构建过程。

当我做主题时,它通常是项目特定的,所以它刚刚在项目回购中完成。 我在外面维护的插件是专门针对该插件的单独repo。

如果它是我维护的客户端,那么一切都由Git处理,并且自动更新被禁用。我最喜欢的是一个命令git status让我知道网站文件发生了什么变化+它全部备份到远程和本地并跟踪的事实。

您还可以使用Vagrant,PuPHPet和/或https://github.com/10up/varying-vagrant-vagrants

的变体进行完全部署

我一直在优化自己的构建,开始使用Composer,改变流浪汉流浪者,Grunt和GitLab进行私人仓库管理,希望能够节省整个流程的时间。

最终它将依赖于很多变量,

  • 托管环境
  • 团队&团队知识
  • 项目类型
  • 项目规模
  • 您自己管理所有内容的能力
  • 您希望如何部署到实时网站
  • 等...