问题描述
我开发主题,很多。我给了一个 PSD,编码 HTML /CSS,将代码压入 Wordpress,并在得到 QC’ 时进行更正。一旦实时,客户可以编辑正常的博客帖子或使用自定义插件上传照片。
有时我必须对主题或页面/帖子内容进行更改,这意味着我要么让他们现场,要么下载并将该站点设置到开发环境中才能被客户批准。我没有备份,我没有版本控制,我意识到这需要改变。
已经提出了 Git 和 Mercurial,我想利用这些工具,但是我对如何将它们融入工作流程感到困惑。
是否需要对开发服务器上的站点进行所有更改,然后一旦批准就推送它们?写博客帖子怎么办?看起来像是在开发人员上写帖子,并且直接推送更改,但是如果在实时站点上编辑数据库,那么如何同步数据库?我已经洗了互联网。一些指导将不胜感激。
最佳解决方案
首先,您需要认识到这里有两个工作流程:您的客户端和您的客户端。
你的工作流程
-
接收 PSD
-
代码 HTML /CSS
-
代码 WordPress 模板
-
部署主题以实现 WordPress 网站
他们的工作流程
-
设计需要更改并通过电子邮件发送给您
-
写帖子
-
上传照片
问题
这里实现版本控制与客户的工作流程无关。这是关于跟踪您用于 WordPress 主题的代码。所有的主题文件,自定义插件等都应该在版本控制系统 (Git,Mercurial,Subversion 或任何您选择使用的) 中。
您的工作流程将变为:
-
编写代码
-
提交更改到版本控制系统
-
推动更改到生产现场
-
从客户端获取评论
-
编写代码
-
提交更改
-
编写代码
-
提交更改
-
推动更改到生产现场
请记住,这是关于维护代码的版本控制历史记录。代码是客户端不应该更改的代码,而且在生产中您不应该更改生产站点上的代码。
但更改内容 (帖子,照片等) 不在您的版本控制系统的范围之内。换句话说,您不要在开发中进行更改,然后将数据库推送到生产环境中。这是一个糟糕的发展实践。如果您需要将 dev 和 prod 数据库作为 in-sync,那么您应该定期从生产箱中提取备份,并从该备份还原本地版本。
代码从开发转向生产。数据库从生产到发展的变化。
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。