公司的版本控管軟體,由 Visual SourceSafe 改用 Subversion,將此次安裝做個筆記,以免忘掉。
公司原本用的版本控管軟體是 Visual SourceSafe,現在打算改用 Subversion 來進行管理,因此將此次安裝心得記錄下來。
一、下載檔案
1. 首先,要下載 Apache:
http://httpd.apache.org/download.cgi
進入下載頁面後有 no ssl 及 open ssl 二種版本,在此以 no ssl 的版本為例,下載 apache_2.2.13-win32-x86-no_ssl.msi 這個檔案:
2. 下載 Subversion:
http://subversion.apache.org/download/
點選 subversion-1.6.17.zip下載 Windows 版本
3. 下載 TortoiseSVN:
http://tortoisesvn.net/downloads
二、安裝 Apache
上述 3 個檔案下載完畢後,接下來就是安裝啦,
1. 執行 apache 安裝程式,填入 Network Domain、Server Name 及 Email 資料,在下方有 2 個選項,可使用預設 Port 80,或是 Port 8080,在此以預設值進行安裝。
2. 開啟 Apache 安裝目錄下 Apache2.2\conf\httpd.conf 檔案,將下列 2 行前方的 # 移除:
LoadModule dav_fs_module modules/mod_dav_fs.so
加入以下兩行 (檔案路徑請依 Subversion 實際安裝位置調整):
LoadModule authz_svn_module "C:/Program Files/Subversion/bin/mod_authz_svn.so"
註:這 2 行要放在 mod_dav.so 之後
在檔案最後面加入
DAV svn
#控管檔的存放位置根資料夾
SVNParentPath "D:/SVNProj"
# how to authenticate a user
AuthType Basic
AuthName "Subversion repository"
#進行帳號驗證時的帳號、密碼資料
AuthUserFile "D:/SVNProj/passwd.ini"
# only authenticated users may access the repository
#操作時要進行帳號驗證,拿掉此行就不會進行驗證
Require valid-user
# our access control policy
# authz.ini 是設定帳號對各 Project 可讀/寫權限的設定檔
AuthzSVNAccessFile "D:/SVNProj/authz.ini"
</Location>
三、安裝 Subversion
1. 將下載的檔案直接解壓縮至 C:\Program Files\Subversion
2. 設定 Windows Path 環境變數,指到 C:\Program Files\Subversion\bin
四、安裝 TortoiseSVN
1. 執行安裝檔進行安裝
2. 安裝好後,建議勾選 Use "_svn" instead of ".svn" directories (參考原因)
五、SVN Project 資料夾、登入密碼、權限設定:
以下操作皆進入 命令提示字元 模式操作
1. 建立 SVN Project:
cd\
md SVNProj
cd SVNProj
C:\Program Files\Subversion\bin\svnadmin create Project1
2. 設定登入帳號、密碼:
若要設定多個帳號,則重複做此動作,並將產生的資料放到 D:\SVNProj\passwd.ini (在 Apache2.2\conf\httpd.conf 中要設定讀取此檔的帳密資料)
3. 權限設定:
將以下內容存在 D:\SVNProj\authz.ini (在 Apache2.2\conf\httpd.conf 中要設定讀取此檔)
[groups]
developer = user1,user2,user3
art = user4
everyone = *
# 預設拒絕所有人進入瀏覽
[/]
* =
# 設定儲存庫訪問權限,語法:[儲存庫:專案路徑]
[Project1:/]
@developer=rw #可讀寫
@art=r #僅可讀取
以上都設定好之後,重啟 Apache 讓設定生效,此時可以用 http://127.0.0.1/Project1/ 測試是否可連上。
或是在檔案總管點滑鼠右鍵選 TortoiseSVN --> repo-browser 後輸入 http://127.0.0.1/Project1/ 看是否可連上。
若要變更連線 Port 為 8080,則修改 Apache2.2\conf\httpd.conf,將 Listen 80 改為 Listen 8080 再重啟 Apache 即可。
註:
1.若在 Vista/Windows7 上有 UAC 機制的系統上安裝 Apache,於安裝時須先關閉 UAC,若啟動後產生錯誤訊息或無法正常連線,則關閉 UAC 後再啟動即可(啟動完後即可再開啟 UAC)
2.要建立 SSL 連線須產生憑證,產生方式請參考如何在 Win32 安裝 Apache 2.0 with OpenSSL + Subversion,文中是針對 Apache 2.0 來做設定,所以憑證檔存放位置不同, Apache 2.2 放在 Apache2.2\conf 下即可。
參考資料: