Ubuntu 安裝 SVN (Subversion Server)
原文:http://blog.xuite.net/gbisland/linux/14229857
Ubuntu 己是近來 Linux 最熱門的 Distribution,它的3D效果真不是蓋的,要不是ATI不爭器,家裡的伺服器(ATI Radeon 9000)早就把它替換掉了,正好最近要將 CVS 轉換為 SVN 系統,就拿它來練功吧!
雖然一開始安裝的是 Ubuntu Desktop 版本(目前最新是 7.10 版),但是在 Ubuntu 下安裝伺服器套件是非常簡單的一件事,只要確定你的電腦可以連上網路,確認你的 source.list 是否正確?(建議您安裝 Lazybuntu 懶人包),按下面步驟即可完成安裝:
(參考文件:在 Ubuntu 中使用 Apache2 管理 Subversion 版本控制系統 )
底下以文字介面的安裝為主,若您使用 GUI 介面的 Synaptic 套件管理程式也可以。
1. 安裝 Apache2 和 Subversion 模組:
$ sudo apt-get install apache2 libapache2-svn subversion
2. 建立 Subversion 儲存庫(Repository)
a. 建立 SVN Root 目錄:
$ sudo mkdir -p /var/local/svnroot
b. 初始化儲存庫:
$ sudo svnadmin create /var/local/svnroot
c. 授予 Apache(www-data) 使用者存取的權限:
$ sudo chown -R www-data:www-data /var/local/svnroot
3. 修改 Apache2 的設定:
$ sudo gedit /etc/apache2/mods-available/dav_svn.conf
修改 "Location " 區段,內容對應如下:
<Location>
DAV svn
SVNPath /var/local/svnroot
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /etc/subversion/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
Location 後面所接的是在 URL 所要打的網址,以本例而言,透過瀏覽器要輸入:http://localhost/svnroot
SVNPath 為 Subversion 的檔案庫路徑,如果將 SVNPath 改為 SVNParentPath,則泛指 在 SVNParentPath 下的所有目錄都會被視為是 Subversion 檔案庫。
AuthUserFile 則是指存放使用者名稱及密碼的檔案路徑。
4. 創建使用者驗證資訊:
$sudo htpasswd [-c] /etc/subversion/passwd username
依照指示輸入使用者密碼即可完成驗證。
-c:表示是否要新建檔案,舊有檔案內容會完全刪除,適用於第一次建立 passwd 檔時。
5. 重新啟動 Apache2:
$ sudo /etc/init.d/apache2 restart
6. 打開瀏覽器,訪問http://localhost/svnroot , 就可以看到Subversion庫的網頁。(當然,現在還沒有任何東東,下面我們要導入一些文件)
7. 匯入(inmport) /home/username/workspace中的文件到http://localhost/svnroot 下的workspace目錄(原始專案目錄);"操作註釋"的內容可隨需求添加,username 為專案使用者名稱。
$ svn import -m "操作註釋" /home/username/workspace http://localhost/svnroot/workspace
8. 取出(checkout)剛才匯入的專案:
checkout http://localhost/svnroot/workspace 中的文件到/home/username/test
$ svn checkout http://localhost/svnroot/workspace /home/username/test
注意:匯出的目錄名稱不可與匯入的目錄名稱相同(最好是將原始的專案目錄(workspace)與匯出的工作目錄(sandbox)區分開來)。