天天看點

Apache 2.0.63 + Svn 1.4.2 版本控制伺服器

       由于工作需要在公司伺服器上安裝一個版本控制伺服器,以前用過vss來做版本控制。說說安裝步驟吧,參照網上的一步一步實作的。伺服器采用的Windows 2003 系統,主要步驟如下:

1.安裝程式與下載下傳說明  

Apache Web伺服器 :http://httpd.apache.org/download.cgi   (Apache2.0.X版,我用的是2.0.63版;新版本在windows下配置檔案修改後重新啟動總是出現錯誤提示!做個标記!) Subversion :(http://subversion.tigris.org/files/documents/15/35379/svn-1.4.2-setup.exe)   

TortoiseSVN 用戶端工具(TortoiseSVN-1.4.1.7992-win32-svn-1.4.2.msi)http://tortoisesvn.net/downloads  

2. 程式安裝  

(1)Apache2.0.63安裝     

防止安裝有問題,在安裝前我先将IIS端口改為8080,然後按提示安裝完成    

打開 http://loccalhost,如果能出現内容,那你的Apache就安裝成功了。     

注:如果你将Apache安裝成一個服務,它将以本地system帳戶來運作。為Apache建立一個單獨的使用者來運作它将會更安全一些。     

請確定運作Apache的使用者有版本庫的完全通路權限(右鍵版本庫目錄->屬性->安全)。要不然,使用者将無法送出他們的更改。就算Apache以本機system來運作,你也要設定它能完全讀寫版本庫目錄。     如果沒有為Apache配置這個許可,使用者将會得到"禁止通路"的錯誤資訊,在Apache的錯誤日志中表現為錯誤500。

(2)運作Subversion安裝程式     

如果安裝程式能夠識别你已經安裝了Apache,那麼你的安裝基本上就OK了。如果它不能(我的機器未能識别),那麼你需要做以下手工配置:      注:如果你先安裝Apache,再安裝Subversion,正常情況下下面的工作(2.3配置前)Subversion安裝程式已經幫你完成了。

使用資料總管,進入Sibversion的安裝目錄(通常為c:\program files\Subversion),找到檔案httpd/mod_dav_svn.so和mod_authz_svn.so,将它們拷貝到Apache的modules目錄(通常為c:\program files\apache group\apache2\modules)。     

從Subversion的安裝目錄拷貝檔案libdb44.dll到Apache的modules目錄。      

使用如記事本之類的文本編輯器編輯Apache的配置檔案(通常為c:\program files\apache group\apache2\conf\httd.conf),修改以下内容: 去掉以下行的注釋(将開頭的#删除): #LoadModule dav_fs_module modules/mod_dav_fs.so 

#LoadModule dav_module modules/mod_dav.so

在LoadModule節的最後添加以下兩行:

LoadModule dav_svn_module modules/mod_dav_svn.so  LoadModule authz_svn_module modules/mod_authz_svn.so 

在配置檔案的最後添加下面這些行:

<Location /svn> DAV svn SVNParentPath D:\SVN          

AuthType Basic 

AuthName "Subversion repositories" 

AuthUserFile D:\passwd        

#AuthzSVNAccessFile D:\svnaccessfile  Require valid-user  </Location>  

配置表示:你所有的版本庫将位于D:\SVN目錄下,要通路你的版本庫可以使用這樣的 URL: http://YourIP/svn/,通路權限将由passwd檔案中的使用者名/密碼來限制。

詳細說明如下: --------------------------------------------------------------------------- <Location /svn> 意味着可以通過像這樣的URL( http://MyServer/svn)來通路Subversion版本庫

DAV svn 告訴Apache哪個子產品負責服務像那樣的URL--在這裡就是Subversion子產品 SVNListParentPath on 在Subversion 1.3及更高版本中,這個訓示器使得Subversion列出由SVNParentPath指定的目錄下所有的版本庫 SVNParentPath D:\SVN 告訴Subversion在目錄D:\SVN下尋找版本庫 #(修改成你自己的目錄)

AuthType Basic 啟用基本的驗證,比如使用者名/密碼

AuthName "Subversion repositories" 當一個驗證對話框彈出時,告訴使用者這個驗證是用來做什麼的

AuthUserFile D:\passwd   #(密碼檔案,不是檔案夾哦)指定D:\passwd用為密碼檔案用來驗證使用者的使用者名及密碼 AuthzSVNAccessFile D:\svnaccessfile 指定D:\svnaccessfile來限定各個使用者或組在版本庫中目錄的通路權限 Require valid-user 限定使用者隻有輸入正确的使用者名及密碼後才能通路這個路徑

-----------------------------------------------------------------------------

建立passwd檔案打開指令行(DOS視窗CMD),将目前目錄切換到apache2目錄(通常為c:\program files\apache group\apache2\bin),

輸入指令: htpasswd.exe -c passwd  username   Automatically using MD5 format. New password: ******  (輸入密碼) Re-type new password: ****** Adding password for user  username copy passwd d:\        

(Httpd.conf 中設定的是在D:) 重新開機Apache服務。

重新開機後打開http://YourIP/svn/ 輸入密碼後,還是出錯(因為還沒有建立版本庫) Forbidden You don't have permission to access /svn on this server.

-------------------------------------------------------------------------------- Apache/2.0.63 (Win32) SVN/1.4.2 DAV/2 Server at 192.168.18.8 Port 80  

(3)TortoiseSVN   

按提示安裝完成,需重新開機電腦  

3.SVN項目設定  

(1).打開資料總管,在D:\SVN目錄下建立WWW目錄  

(2).在WWW檔案夾上右擊TortoiseSVN--->Create repository here...      

(也可以通過指令的方式:到SVN的安裝BIN目錄。

運作:svnadmin create D:\svn\www      

d:\svn目錄需先建好,要不會出錯:    

svnadmin: 檔案庫建立失敗    

svnadmin: 無法建立最上層目錄   

(3).然後選擇Native filesystem(FSFS)   

(4).到項目檔案夾上,右擊TortoiseSVN-->import...    在URL of repository:中輸入http://YourIP/svn/www (5).項目成員,可在自己機上建立一個空的項目檔案夾.右擊SVN checkout...     

在提示的使用者名和密碼對話框中輸入服務端配置的使用者名和密碼;然後點選OK;

後面對話框中即會顯示逐個加入的檔案和目錄資訊,最後一條顯示“Completed  At Version 1”。    

如果成功,可以在本地目錄下看到相應的代碼檔案。選中檔案或目錄,可以進行“SVN Update”(從伺服器更新版本)和“Svn Commit”(送出更改到伺服器)操作。

轉載于:https://www.cnblogs.com/caitou/archive/2008/03/28/1127508.html

繼續閱讀