問題描述
我開發主題,很多。我給了一個 PSD,編碼 HTML /CSS,將代碼壓入 Wordpress,並在得到 QC’ 時進行更正。一旦即時,客户可以編輯正常的博客帖子或使用自定義插件上傳照片。
有時我必須對主題或頁面/帖子內容進行更改,這意味着我要麼讓他們現場,要麼下載並將該站點設置到開發環境中才能被客户批准。我沒有備份,我沒有版本控制,我意識到這需要改變。
已經提出了 Git 和 Mercurial,我想利用這些工具,但是我對如何將它們融入工作流程感到困惑。
是否需要對開發服務器上的站點進行所有更改,然後一旦批准就推送它們?寫博客帖子怎麼辦?看起來像是在開發人員上寫帖子,並且直接推送更改,但是如果在即時站點上編輯數據庫,那麼如何同步數據庫?我已經洗了互聯網。一些指導將不勝感激。
最佳解決方案
首先,您需要認識到這裏有兩個工作流程:您的客户端和您的客户端。
你的工作流程
-
接收 PSD
-
代碼 HTML /CSS
-
代碼 WordPress 模板
-
部署主題以實現 WordPress 網站
他們的工作流程
-
設計需要更改並通過電子郵件發送給您
-
寫帖子
-
上傳照片
問題
這裏實現版本控制與客户的工作流程無關。這是關於跟蹤您用於 WordPress 主題的代碼。所有的主題文件,自定義插件等都應該在版本控制系統 (Git,Mercurial,Subversion 或任何您選擇使用的) 中。
您的工作流程將變為:
-
編寫代碼
-
提交更改到版本控制系統
-
推動更改到生產現場
-
從客户端獲取評論
-
編寫代碼
-
提交更改
-
編寫代碼
-
提交更改
-
推動更改到生產現場
請記住,這是關於維護代碼的版本控制歷史記錄。代碼是客户端不應該更改的代碼,而且在生產中您不應該更改生產站點上的代碼。
但更改內容 (帖子,照片等) 不在您的版本控制系統的範圍之內。換句話説,您不要在開發中進行更改,然後將數據庫推送到生產環境中。這是一個糟糕的發展實踐。如果您需要將 dev 和 prod 數據庫作為 in-sync,那麼您應該定期從生產箱中提取備份,並從該備份還原本地版本。
代碼從開發轉向生產。數據庫從生產到發展的變化。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。