2010-09-24 116 views
3

創建網站存儲庫的最佳做法是什麼?存儲庫是否存在並且不需要從repo移動文件?或者您是否需要將文件從服務器存儲庫移至Web服務器?爲網站創建Subversion存儲庫

+0

看起來像一個副本:http://stackoverflow.com/questions/3678778/implementing-version-control-for-webdevelopment/3680340#3680340 – timdev 2010-09-24 03:09:12

回答

1

Randolpho當然是正確的,你不想對付活動的服務器文件。

你有一個源代碼控制系統,這樣做的目的是讓你可以隨時跟蹤誰改變了什麼,所以如果你需要並且知道誰在大聲嚷嚷,你可以改回它。

您有Web服務器來爲您的內容提供服務。

而且您有一個部署過程,即從Web服務器上安裝源控件獲取內容的過程。理想情況下,這不是一個手動過程。理想情況下,你要在這裏發生的事情是,當你要部署到Web服務器,你在命令行中鍵入幾個單詞和

1)內容是從源頭控制拉

2)它是驗證內容都在那裏,打算做你期望它

3)的內容移動到需要重新啓動重新啓動

4),做一個測試Web服務器和任何事情以確保Web服務器已啓動,並且它所提供的內容是您期望它提供的內容。

自動化是一件美好的事情。

0
  1. '進口' 到網站根的svn
  2. 刪除根目錄
  3. '結賬' 的SVN到您的根目錄。

之後,您可以簡單地'提交',而在webroot中提交您的更改。

http://aymanh.com/subversion-a-quick-tutorial

http://www.abbeyworkshop.com/howto/misc/svn01/

+0

這將使'.svn'管理員dirs(讀)訪問到世界。 – detly 2010-09-24 03:00:33

+0

爲什麼不能更改此目錄的權限,以便運行Apache http服務器的用戶/組不能訪問,但服務器管理員或程序員呢? – Ablue 2010-09-24 03:28:26

5

永遠,抗住服務器文件不斷工作。

始終檢查本地副本的源代碼管理,並準備部署包以上傳到您的服務器。

+0

+1,完全同意 – 2010-09-24 02:49:53

0

您的Web服務器可以提供來自Subversion簽出的頁面,本質上使用svn作爲部署工具。

像往常一樣首先建立一個Subversion版本庫。只是通常的,常用的存儲庫佈局,至少有trunk和tags。您可能已經有一個現有的存儲庫。做你的發展並檢查你的網站代碼。爲第一個版本創建一個標籤。

然後在Web服務器上查看相應版本的副本。例如,cd /path/to/web/root/folder && svn co path_to_repository/tags/1.0 .

比方說,您更新您的網站並檢查更改。更新準備就緒後,再次爲其創建標籤。在網絡服務器上,通過例如切換到新版本。 cd /path/to/web/root/folder && svn sw path_to_repository/tags/1.1

請注意,這當然會浪費你的網頁根目錄.svn。這可能會也可能不是問題,具體取決於您正在部署的內容。對於我的網站,這絕不是問題(我確保他們通過.htaccess保護)。

這個想法是,你在開發機器上進行開發,並且只有在新標籤準備就緒後才能登錄到Web服務器,並準備好將Web服務器切換到新版本。

+0

您可能希望使用適當的.htaccess文件隱藏公共的這些.svn目錄。 – pjz 2010-09-24 03:02:21