問題描述

在 WordPress 安裝上開發的是 Subversion 版本控制。我們沒有使用外部鏈接插件 – 插件正在由 non-developers 負責內容的安裝/更新。

這會導致存儲庫中的問題,特別是對於已經在版本控制下的插件,並且正在更新到最新版本,因為更新插件會刪除目錄 (包括所有.svn 文件夾),然後刪除 re-creates 。

這是一個典型的情況,這使我沒有結束悲傷:

  1. 將現有的 WordPress 網站置於版本控制下,以一個新的回購。這個現有的網站 ALREADY 有一些插件。其中一些插件已過期

  2. 現在,進入管理員並更新這些插件

  3. 運行 svn st,你看到如下:〜 addthis 〜 google-analytics-for-wordpress 等…

波浪號〜特別討厭,因為它意味着 「呃,我不知不覺中」,而 SVN 只是一個盒子。甚至複製,刪除,刪除,恢復,移回,嘗試提交。

許多人建議使用 svn:externals 或手動 FTP 更新,這是很好的和花花公子,但我只是希望能夠使用 UI 上帝的意圖。從我可以看到的核心,沒有掛鈎可以用來説服 WP 不刪除文件夾或.svn 文件夾。有什麼可以做的嗎?

最佳解決方案

真正的答案,考慮到以上所有內容:

關於.svn 目錄:Subversion 1.7 在一年前發佈 (http://svn.haxx.se/dev/archive-2011-10/0152.shtml),工作副本不再包含每個文件夾中的.svn 目錄。它們在根目錄中包含一個.svn 目錄,同時具有相當大的性能改進。今天,SVN 是 1.7.7 版本。您應該升級您的 svn 客户端,以消除任何類型的問題。

這回答了原始問題,因為 WP 刪除目錄和 re-creating 它們不再是一個問題。它不會弄亂 Subversion 1.7 或更高版本的工作副本。但是,它並沒有解決有關生產部署和開發/測試環境的存儲庫管理的更大問題。

基本上,您如何管理生產機器取決於您。如果您真正擁有一個真正的”production” 環境,那麼您應該使用權限方案和/或插件來禁用用户直接升級系統的能力。用户無法更改生產。這就是稱它為”production” 的一點。這種情況的變更將由開發人員進行,並首先通過測試和/或質量檢查系統進行。如果你有這樣的環境,真的需要這種控制,那麼完全禁用升級程序就是首選的方式。

哎,我自己只用這種環境,儘管我一直在控制開發,測試和生產。整個網站都是 SVN 的回購。其中一些確實使用外部 (我使用 WP 中繼線,我使用幾個插件作為中繼版本),其中一些不是並且是本地的回購。對我來説,部署更改為生產意味着在這些盒子上做一個 svn up,基本上。這些文件系統無法直接進行更改。

另一方面,一些我直接運行的站點,定期備份。如果我的個人網站有點不舒服,那麼真的不會影響我。我使用 WP 更新器就可以了。現在,我沒有在這個回購中運行這些網站,我只是定期備份整個事情。事實上,我在我的個人網站上使用 VaultPress,但任何備份方法都是一個好主意。這是一種不同的管理類型,我不需要開發/測試環境。

WordPress 適用於您希望創建的任何系統,但該系統是 WordPress 外部的,而您如何管理它是一個不是 WP 的問題,而是您想如何管理它。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。