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